【发布时间】:2015-10-14 00:06:39
【问题描述】:
如何使用后面代码中的 DataTable 设置此下拉列表?
<asp:GridView ID="gvTemplateFields"
runat="server"
CssClass="grid"
AutoGenerateColumns="false"
<Columns>
<asp:TemplateField HeaderText="Estado" ItemStyle-Width="50px">
<ItemTemplate>
<asp:DropDownList ID="RiskWorkDropDownList" runat="server">
<asp:ListItem Value="1">Pendiente</asp:ListItem>
<asp:ListItem>Atendido</asp:ListItem>
</asp:DropDownList>
</ItemTemplate>
</asp:TemplateField>
</Columns>
<EmptyDataTemplate>No off-site links found.</EmptyDataTemplate>
</asp:GridView>
背后的代码:
public int SWMSTemplateId;
public DropDownList RiskWorkDropDownList;
protected void Page_Load(object sender, EventArgs e)
{
SWMSTemplateId = int.Parse(Request.QueryString["templateid"]);
DataTable templateFields = SWMSField.GetTemplateFields(SWMSTemplateId);
RiskWorkDropDownList.DataSource = templateFields;
RiskWorkDropDownList.DataBind();
}
错误:
System.NullReferenceException: Object reference not set to an instance of an object.
RiskWorkDropDownList 为空
RiskWorkDropDownList.DataSource = templateFields;
我正试图让它像处理这个问题/答案一样工作:
【问题讨论】:
-
展示你目前对背后代码的尝试,这样回答的人就不必从头开始写了。
-
哪一行给你错误?什么对象是空的?你知道 NullReferenceException 是什么吗?