The name'xxx'does not exist in the current contextエラー解決方法の1つ

1756 ワード

内層にネストされたasp:datalistまたは他のコントロールは、code behindによって直接呼び出されることはできません.現在、外層のdatalistにイベントonitemdataboundイベント処理関数を追加する必要があります.使用方法は次のとおりです.
aspxファイル:

	
		
asxp.csファイル:(イベント処理関数に内層DataListデータ邦定を加える)
protected void Page_Load(object sender, EventArgs e)
    {
        SQL sql = new SQL("select * from bigsorts");
        SqlDataAdapter sda = sql.GetSqlDataAdapter();
        DataSet ds = new DataSet();
        sda.Fill(ds,"table1");
        DataList1.DataSource = ds;
        DataList1.DataBind();
        sql.CloseConn();
        Response.Write(ConfigurationManager.ConnectionStrings["LocalSqlServer"].ToString());
    }

    protected void DataList1_DataBinding(object sender, DataListItemEventArgs e)
    {
        DataList dl = (DataList)e.Item.FindControl("DataList2");
        Label l = (Label)e.Item.FindControl("L");
        SQL sql = new SQL("select * from tblsorts where parentid=" + l.Text);
        SqlDataAdapter sda = sql.GetSqlDataAdapter();
        DataSet ds = new DataSet();
        sda.Fill(ds, "table");
        dl.DataSource = ds;
        dl.DataBind();
    }