I used Dx AspxGridView.And I tried bind some labels from this grid.
I have a row in this grid and there are 12 column.
I want to be like this :
Label1.Tex=Value of Column1
Label2.Tex=Value of Column2
Label3.Tex=Value of 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=Value of Column12
My codes :
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);
}
I get this error
System.NullReferenceException: Object reference not set to an instance of an object.
at line
label.Text = string.Format("{0}",Value);
.
.
.
I solved my problem.
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();
}
}