【问题标题】:Getting selected item from Telerik Combobox in edit mode of Grid?在网格的编辑模式下从 Telerik Combobox 中获取选定的项目?
【发布时间】:2016-07-18 17:33:25
【问题描述】:

所以我在网格的编辑表单中有一个组合框...当我选择更新时,我想从组合框中获取所选项目,如果它代表更改,我将执行更新。为了我的一生……我承认自己生锈得厉害,我不知道自己做错了什么。我还尝试在 selectionchanged 事件中读取它并且不会触发: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>

【问题讨论】:

  • 问题到底出在哪里?组合框是否配置为按需加载项目?
  • @VeselinVasilev ...好吧,“大”问题基本上是我无法阅读组合框选定的文本。我一直在尝试遵循 Telerik 提供的示例,但没有运气。我所能得到的只是第一个(默认)值。如果我设置为自动回发,它会在我从下拉列表中选择一个值后立即“重置”,如果我将其设置为不回发,它仍然会检索原始值,而不是选定的值。
  • 如果您启用了组合框的 LoadOnDemand,那么您应该只在服务器上使用 SelectedValue 和 Text 属性。见这篇文章:docs.telerik.com/devtools/aspnet-ajax/controls/combobox/…
  • 为了更好地理解您的问题,请在您的帖子中包含您的 ASPX 标记。
  • @VeselinVasilev 谢谢你的回复......对不起,我今天被转移了。我编辑了我的原始帖子以添加我的标记的相关部分。正如我试图解释的那样,无论我尝试什么,我都无法阅读所选文本。我尝试过是否使组合框自动回发,按需加载,尝试在 selecteditemchanged 事件中捕获它(这似乎根本没有触发)。我已经尝试了十几种不同的方法,但一无所获......我将非常感谢任何建议!谢谢!

标签: c# asp.net telerik


【解决方案1】:

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

感谢提供意见的人,祝你好运!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多