问:
模板列一:
<asp:datagrid id="DataGrid1" runat="server" Font-Size="X-Small" Width="605" ShowHeader="False" AutoGenerateColumns="False">
<AlternatingItemStyle BackColor="LightSteelBlue"></AlternatingItemStyle>
<Columns>
<asp:TemplateColumn HeaderText="片编号">
<HeaderStyle HorizontalAlign="Center" Width="50px" VerticalAlign="Middle"></HeaderStyle>
<ItemStyle HorizontalAlign="Right"></ItemStyle>
<ItemTemplate>
<asp:Label runat="server" Width ="56px" Text='<%# DataBinder.Eval(Container, "DataItem.Picesid") %>' ID="Label2">
</asp:Label>
</ItemTemplate>
<FooterStyle HorizontalAlign="Center" VerticalAlign="Middle"></FooterStyle>
</asp:TemplateColumn>
</Columns>
</asp:datagrid>
模板列二:
<asp:TemplateColumn HeaderText="身份证号">
<ItemTemplate>
<asp:Label ID="Label" runat="server" Text='<%# DataBinder.Eval(Container,"DataItem.trad")%>'></asp:Label>
</ItemTemplate>
</asp:TemplateColumn>
取值:
我用
((string)((TextBox)MyDataGrid.Items[j].Cells[i].Controle[j])).Text.ToString()
取单元格中的数据,系统编译不通过错误是:
error CS0104: “TextBox”是不明确的引用
请高手指点
______________________________________________________________________________________________
答1:
我又改为
((string)((Label)MyDataGrid.Items[j].Cells[i].Controle[j])).Text.ToString()
取单元格中的数据,系统编译不通过错误是:
error CS0104: “Label”是不明确的引用
如果强行运行,我取出的值为空
______________________________________________________________________________________________
答2:
你要根据情况获取DataGrid中的控件的值,看你的写法说明你是要获取DataGrid中所有列中包含TextBox文本框中的数值, 不如判断一下是否已经找到这个控件再判断取值,我这有VB.net的写法,请见量:
For j = 0 To MyDataGrid.Items.Count - 1
For i = 0 To MyDataGrid.Items.Cells.Count - 1
If Not Ctype(MyDataGrid.Items(j).Cells(i).Controls,TextBox) _
Is Nothing Then
strValue = Ctype(MyDataGrid.Items(j).Cells(i).Controls,TextBox).Text
End If
Next i
Next j
______________________________________________________________________________________________
答3:
看看下面的方法如何?? 没有测试过,估计应该可以的。
<asp:datagrid id="DataGrid1" runat="server" Font-Size="X-Small" Width="605" ShowHeader="False" AutoGenerateColumns="False">
<AlternatingItemStyle BackColor="LightSteelBlue"></AlternatingItemStyle>
<Columns>
<asp:TemplateColumn HeaderText="片编号">
<HeaderStyle HorizontalAlign="Center" Width="50px" VerticalAlign="Middle"></HeaderStyle>
<ItemStyle HorizontalAlign="Right"></ItemStyle>
<ItemTemplate>
<%# DataBinder.Eval(Container, "DataItem.Picesid") %>
</ItemTemplate>
<FooterStyle HorizontalAlign="Center" VerticalAlign="Middle"></FooterStyle>
</asp:TemplateColumn>
</Columns>
</asp:datagrid>
访问:
MyDataGrid.Items[j].Cells[i].Text;