如何访问Telerik网格行和单元格项? [英] How to access Telerik grid rows and cell items?
本文介绍了如何访问Telerik网格行和单元格项?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有以下telerik网格:
Hi,
I have the following telerik grid:
<br />
<br />
<pre><br />
<asp:UpdatePanel ID="UpdatePanel1" runat="server"><br />
<ContentTemplate><br />
<telerik:RadGrid ID="GrdDynamic" runat="server" AutoGenerateColumns="false"<br />
ShowFooter="True"><br />
<MasterTableView><br />
<Columns><br />
<telerik:GridBoundColumn AllowFiltering="false" HeaderText="MovieID" UniqueName="MovieID" HeaderStyle-Wrap="false"<br />
DataField="MoviePriority"><br />
</telerik:GridBoundColumn><br />
<telerik:GridTemplateColumn AllowFiltering="false" D HeaderText="Channel Number" UniqueName="Channel Number" ItemStyle-HorizontalAlign="Center"><br />
<ItemTemplate><br />
<asp:TextBox ID="txtChannelNo" runat="server" Text=''<%# Bind("ChannelNumber") %>''/><br />
</ItemTemplate><br />
</telerik:GridTemplateColumn><br />
<telerik:GridTemplateColumn AllowFiltering="false" HeaderText="Service ID" UniqueName="Service ID" ItemStyle-HorizontalAlign="Center"><br />
<ItemTemplate><br />
<asp:TextBox ID="txtServiceID" runat="server" Text=''<%# Bind("ServiceID") %>''/><br />
</ItemTemplate><br />
</telerik:GridTemplateColumn><br />
<telerik:GridTemplateColumn AllowFiltering="false" HeaderText="Transponder ID" UniqueName="Transponder ID" ItemStyle-HorizontalAlign="Center"><br />
<ItemTemplate><br />
<asp:TextBox ID="txtTransponderID" runat="server" Text=''<%# Bind("TransponderID") %>''/><br />
</ItemTemplate><br />
</telerik:GridTemplateColumn><br />
<telerik:GridTemplateColumn AllowFiltering="false" HeaderText="Network ID" UniqueName="Network ID" ItemStyle-HorizontalAlign="Center"><br />
<ItemTemplate><br />
<asp:TextBox ID="txtNetworkID" runat="server" Text=''<%# Bind("NetworkID") %>''/><br />
</ItemTemplate><br />
</telerik:GridTemplateColumn><br />
</Columns><br />
</MasterTableView><br />
<ClientSettings AllowColumnHide="true" ReorderColumnsOnClient="false"><br />
<Selecting AllowRowSelect="true" /><br />
<Resizing AllowColumnResize="true" AllowRowResize="true" /><br />
</ClientSettings><br />
<FilterMenu EnableEmbeddedSkins="False"><br />
</FilterMenu><br />
</telerik:RadGrid><br />
<asp:LinkButton ID="btnSaveNetwork" runat="server"<br />
CssClass="button-orange-100"<br />
onclick="btnSaveNetwork_Click">Save Network </asp:LinkButton><br />
<asp:Label ID="lblNetworkMsg" runat="server" class="LabelText" CssClass="ErrorMsg"<br />
Font-Size="Small" Height="16px" Text="Project Network info saved Successfully!"<br />
Visible="False" Width="242px"></asp:Label><br />
</ContentTemplate><br />
</asp:UpdatePanel><br />
</pre>
在一个提交按钮单击事件中,我正在编写以下代码:
And in a submit button click event,I am writting the following code:
protected void btnSaveNetwork_Click(object sender, EventArgs e)
{
int res = 0;
NetworkInformation netin = new NetworkInformation();
netin.ProjectId = ProjectID;
netin.UserId = Convert.ToInt32(SessionHelper.UserId);
foreach (GridDataItem gvr in GrdDynamic.Items)
{
netin.ProjectId = ProjectID;
netin.UserId = Convert.ToInt32(SessionHelper.UserId);
netin.MoviePriority = Convert.ToInt32(gvr["MovieID"].Text);
netin.ChannelNumber = (gvr["Channel Number"].Text!="")? Convert.ToInt32(gvr["Channel Number"]) : 0;
netin.ServiceId = (gvr["Service ID"].Text!="")?gvr["Service ID"].Text:null;
netin.TransponderId= (gvr["Transponder ID"].Text!="")?gvr["Transponder ID"].Text:null;
netin.NetworkId= (gvr["Network ID"].Text!="")?gvr["Network ID"].Text:null;
res=UpdateNetworkInfo(netin);
}
if (res > 0)
{
lblNetworkMsg.Visible = true;
Reset();
}
}
但是,问题是:我无法获取ChannelNumber,ServiceID,TransponderID,NetworkID的null,即无法访问在相应文本框中输入的值.
我在哪里出错?我需要在diff事件中编写相同的代码还是在diff事件中编写差异代码?请提出建议.
But, the problem is: I am gettting null for ChannelNumber,ServiceID,TransponderID,NetworkID,i.e.,not being able to access the values entered in those respective textboxes.
Where am I going wrong?Do I need to write the same code in diff event?or diff code in diff event? Please suggest.
推荐答案
我已经做到了:
I have done it:
protected void btnSaveNetwork_Click(object sender, EventArgs e)
{
int res = 0;
NetworkInformation netin = new NetworkInformation();
netin.ProjectId = ProjectID;
netin.UserId = Convert.ToInt32(SessionHelper.UserId);
foreach (GridDataItem gvr in GrdDynamic.Items)
{
//netin.ProjectId = ProjectID;
//netin.UserId = Convert.ToInt32(SessionHelper.UserId);
netin.MoviePriority = Convert.ToInt32(gvr["MovieID"].Text);
System.Web.UI.WebControls.TextBox channelno = gvr["Channel Number"].FindControl("txtChannelNo") as System.Web.UI.WebControls.TextBox;
netin.ChannelNumber = Convert.ToInt32(channelno.Text);
//netin.ChannelNumber = (gvr["Channel Number"].Text!="")? Convert.ToInt32(gvr["Channel Number"]) : 0;
System.Web.UI.WebControls.TextBox serviceid = gvr["Service ID"].FindControl("txtServiceID") as System.Web.UI.WebControls.TextBox;
netin.ServiceId = serviceid.Text;
//netin.ServiceId = (gvr["Service ID"].Text!="")?gvr["Service ID"].Text:null;
System.Web.UI.WebControls.TextBox transponderid = gvr["Transponder ID"].FindControl("txtTransponderID") as System.Web.UI.WebControls.TextBox;
netin.TransponderId = transponderid.Text;
//netin.TransponderId= (gvr["Transponder ID"].Text!="")?gvr["Transponder ID"].Text:null;
System.Web.UI.WebControls.TextBox networkid = gvr["Network ID"].FindControl("txtNetworkID") as System.Web.UI.WebControls.TextBox;
netin.NetworkId = networkid.Text;
// netin.NetworkId= (gvr["Network ID"].Text!="")?gvr["Network ID"].Text:null;
res = UpdateNetworkInfo(netin);
}
if (res > 0)
{
Session["ProjectMaster"] = null;
lblNetworkMsg.Text = "Project Network info saved Successfully!";
//lblNetworkMsg.Visible = true;
Cancel();
GrdDynamic.Visible = false;
btnEditProjectNetwork.Enabled = false;
btnSaveProject.Enabled = false;
btnReset.Enabled = false;
btnCancel.Enabled = false;
}
}
希望这对其他人有帮助.
Hope this helps someone else.
这篇关于如何访问Telerik网格行和单元格项?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文