在Grid的编辑模式下从Telerik Combobox中获取所选项目?

时间:2016-07-18 17:33:25

标签: c# asp.net telerik

所以我在网格的编辑形式中有一个组合框...当我选择更新时,我想从组合框中获取所选项目,如果它代表一个更改,我会执行更新。对于我的生活......我承认自己生锈了,我无法弄清楚我做错了什么。我也尝试在一个选择改变的事件中阅读它并且不会触发:C

与往常一样,我非常感谢任何能够腾出时间指引我正确方向的人......这是我最近的许多尝试。

protected void RadGrid1_UpdateCommand(object source, GridCommandEventArgs e)
    {

        if (e.CommandName == "Update")
        {

            GridEditableItem item = (GridEditableItem)e.Item;           
            RadComboBox combo =(RadComboBox)item.FindControl("updateComboBox");             
            var status = (string)item.GetDataKeyValue("status");
            if (combo.SelectedItem.Text!= status)

            {
                //do my update                
            }


        }

编辑添加ASPX:

  <telerik:GridTemplateColumn HeaderText="Category" ItemStyle-Width="240px">

                    <ItemTemplate>

                        <%#DataBinder.Eval(Container.DataItem, "Status")%>

                    </ItemTemplate>

                    <EditItemTemplate>

                        <telerik:RadComboBox RenderMode="Lightweight" runat="server" ID="updateComboBox" DataTextField="Status" 

                            DataValueField="ID" DataSourceID="LinqDataSource1" SelectedValue='<%#Bind("ID") %>' AutoPostBack="False" EnableLoadOnDemand="True" CausesValidation="False">

                        </telerik:RadComboBox>

                    </EditItemTemplate>

                </telerik:GridTemplateColumn>

                <telerik:GridEditCommandColumn FooterText="EditCommand footer" UniqueName="EditCommandColumn"

                    HeaderText="Edit" HeaderStyle-Width="100px" UpdateText="Update">

                </telerik:GridEditCommandColumn>

1 个答案:

答案 0 :(得分:0)

好吧,我觉得自己像个白痴,但也许这会帮助其他人解决同样的问题。我在一个不合适的地方叫数据绑定。好像修好了......

感谢那些提供意见的人,祝福!