数据绑定到隐藏的Aspxcombox

本文关键字:Aspxcombox 隐藏 数据绑定 | 更新日期: 2023-09-27 18:23:56

我有一个aspxGridView控件来列出一些记录。我使用组合框来填充一些数据,这与aspxgridview的不同。

protected void ASPxGridView1_CellEditorInitialize(object sender, ASPxGridViewEditorEventArgs e)
{         
        if (e.Column.FieldName == "LnkHotelID")
        {
            ASPxComboBox cmb = e.Editor as ASPxComboBox;
            cmb.DataSource = DsHtel;
            cmb.ValueField = "HotelID";
            cmb.ValueType = typeof(Int32);
            cmb.TextField = "HotelName";
            cmb.DataBindItems();
        }            
}

我不想看到"LnkHotelID",所以我想把它隐藏起来。但是当我隐藏此列时,我无法使用上面的函数。此外,我想看到"HotelName"列,但不更新它。

所以我有两个问题:

1) 如何在运行时访问aspxcombobox?2) 如何显示我的HotelName而不编辑它们?

数据绑定到隐藏的Aspxcombox

ASPxComboBox.ClientEnabled属性设置为False:

ASPxComboBox cmb = e.Editor as ASPxComboBox;
cmb.ClientEnabled = false;

当您用visible=false隐藏列时,它不会在HTML中呈现,所以您不能使用上面的函数。因此,不使用可见的错误使用带有显示的样式属性:无

<style>
   .hiddencolumn {display:none;}
</style>
<asp:GridView ID="GridViewHotel" runat="server" AutoGenerateColumns="false">
   <Columns>
    <asp:BoundField DataField="LnkHotelID" ItemStyle-CssClass="hidden"
        HeaderStyle-CssClass="hiddencolumn" />
</Columns>
</asp:GridView>

现在你可以使用你的代码了。