0

これは、 IMGUserlabel が .Apsx にある場所です。

ここに画像の説明を入力

これは Aspx.Cs です:

public void GetUserDetails(int id)
{   
    string getUserDetail = "Select ID,Email,Name,Country,Convert(varchar (20), RegisterDate, 106) RegisterDate,Convert(varchar (20), LastLogin, 106) LastLogin ,Description,ImageName FROM [User] where Id='" + id + "'";

    dt = dbClass.ConnectDataBaseReturnDT(getUserDetail);
    if (dt.Rows.Count > 0)
    {
        IMGUserLabel.Text = dt.Rows[0]["Name"].ToString();
        NameLabel.Text = dt.Rows[0]["Name"].ToString();
        UserImage.ImageUrl = "~/UserImage/" + dt.Rows[0]["ImageName"].ToString();
        lblCreated.Text = dt.Rows[0]["RegisterDate"].ToString();
        LabelLastLogin.Text = dt.Rows[0]["LastLogin"].ToString();
        lblCreated.Text = dt.Rows[0]["RegisterDate"].ToString();
        LabelAboutMe.Text = dt.Rows[0]["Description"].ToString();
    }
}

そして、エラーが表示されます: 「'IMGUserLabel' は現在のコンテキストに存在しません」という名前ですが、他のラベルはデータを正しく表示します

OK、これを追加しました。エラーはありません:)しかし、ラベルにデータが表示されていません。「ラベル」とだけ表示されています。

void Item_Bound(Object sender, DataListItemEventArgs e)
{
    string getUserDetail = "Select ID,Email,Name,Country,Convert(varchar (20), RegisterDate, 106) RegisterDate,Convert(varchar (20), LastLogin, 106) LastLogin ,Description,ImageName FROM [User] where Id='" + e + "'";
    {
        // Retrieve the Label control in the current DataListItem.
        Label IMGUserLabel = (Label)e.Item.FindControl("IMGUserLabel");
        IMGUserLabel.Text = dt.Rows[0]["Name"].ToString();
    }
}

これは Result です。ラベルはその画像のユーザーを表示するはずです ここに画像の説明を入力

4

2 に答える 2

2

lblCreatedとNameLabelは、DataListの外部で定義されているため、機能しています。メソッド内からIMGUserLabelにアクセスするには、最初にDataList内でIMGUserLabelを見つける必要があります。

Label IMGUserLabel = (Label)e.FindControl( "IMGUserLabel");
IMGUserLabel.Text = dt.Rows[0]["Name"].ToString();

'e'は、DataBoundイベントハンドラーのDataListItemEventArgsインスタンスです。GetUserDetailsメソッドを変更してDataListItemEventArgsインスタンスを取り込むか、Labelインスタンスを直接渡す必要があります。

于 2012-10-02T20:07:38.700 に答える
0

私は私の答えを見つけました、それはずっとでした:

 IMGUserLabel.Text = dt.Rows[0]["Name".]ToString();

助けてくれた皆さん、ありがとうございました。

于 2012-10-03T04:06:12.713 に答える