我使用了Dx AspxGridView.And我尝试从这个网格绑定一些标签。
我在这个网格中有一行,有12列。
我希望是这样的:
Label1.Tex = Column1的值
Label2.Tex = Column2的值
Label3.Tex = Column3的值
<dx:ASPxLabel runat="server" ID="Label1" Text=""></dx:ASPxLabel>
<dx:ASPxLabel runat="server" ID="Label2" Text=""></dx:ASPxLabel>
<dx:ASPxLabel runat="server" ID="Label3" Text=""></dx:ASPxLabel>
.
.
.
Label12.Tex = Column12的值
我的代码:
protected void ASPxGridView1_HtmlRowCreated(object sender,
ASPxGridViewTableRowEventArgs e)
{
if (e.RowType != DevExpress.Web.ASPxGridView.GridViewRowType.Data) return;
DevExpress.Web.ASPxEditors.ASPxLabel label =
ASPxGridView1.FindRowCellTemplateControl(e.VisibleIndex, null, "Label1") as
DevExpress.Web.ASPxEditors.ASPxLabel;
//for integer value of column
int Value=(int) e.GetValue("Column1");
label.Text = string.Format("{0}",Value);
DevExpress.Web.ASPxEditors.ASPxLabel label2 =
ASPxGridView1.FindRowCellTemplateControl(e.VisibleIndex, null, "Label3") as
DevExpress.Web.ASPxEditors.ASPxLabel;
int Value2=(int) e.GetValue("Column2");
label2.Text = string.Format("{0}",Value2);
DevExpress.Web.ASPxEditors.ASPxLabel label3 =
ASPxGridView1.FindRowCellTemplateControl(e.VisibleIndex, null, "Label3") as
DevExpress.Web.ASPxEditors.ASPxLabel;
//for string value of column
string Value3=(string) e.GetValue("Column3");
label.3Text = string.Format("{0}",Value3);
}
我收到此错误
System.NullReferenceException: Object reference not set to an instance of an object.
在第
行 label.Text = string.Format("{0}",Value);
答案 0 :(得分:0)
我解决了我的问题。
protected void ASPxGridView1_CustomColumnDisplayText(object sender,
ASPxGridViewColumnDisplayTextEventArgs e)
{
if (e.Column.FieldName == "Column1")
{
Label1.Text = e.Value.ToString();
}
if (e.Column.FieldName == "Column2")
{
Label2.Text = e.Value.ToString();
}
.
.
if (e.Column.FieldName == "Column12")
{
Label12.Text = e.Value.ToString();
}
}