Asp.net Infragistics-Ultrawebgrid-添加从另一个表中获取值的下拉列表

Asp.net Infragistics-Ultrawebgrid-添加从另一个表中获取值的下拉列表,asp.net,infragistics,Asp.net,Infragistics,我有一个Ultrawebgrid,其中显示两列。单击第二列(其中的任何行)时,我希望显示一个下拉列表,其中包含另一个表中的值 我们使用的版本是Infrastics2.WebUI.Misc.v7.3,版本=7.3.20073.38 我在挣扎,尝试了一切,但都不起作用: 代码是: Me.ultrawebgrid1.Columns(1).Type = ColumnType.DropDownList Me.ultrawebgrid1.Columns(1).ValueList.ValueL

我有一个Ultrawebgrid,其中显示两列。单击第二列(其中的任何行)时,我希望显示一个下拉列表,其中包含另一个表中的值

我们使用的版本是Infrastics2.WebUI.Misc.v7.3,版本=7.3.20073.38

我在挣扎,尝试了一切,但都不起作用:

代码是:

    Me.ultrawebgrid1.Columns(1).Type = ColumnType.DropDownList
    Me.ultrawebgrid1.Columns(1).ValueList.ValueListItems.Clear()
    Me.ultrawebgrid1.Columns(1).ValueList.DataSource = dsGetEmployees
    Me.ultrawebgrid1.Columns(1).ValueList.DataMember = "EmployeeId"
    Me.ultrawebgrid1.Columns(1).ValueList.DisplayMember = "EmployeeName"
    Me.ultrawebgrid1.Columns(1).ValueList.DataBind()

                 <igtbl:UltraWebGrid ID="ultrawebgrid1" runat="server"
                        DataSourceID="dsGetEmployeeHistory" Height="473px" Width="100%">
                        <Bands>
                            <igtbl:UltraGridBand>
                                <Columns>
                                    <igtbl:UltraGridColumn BaseColumnName="EmployeeId" IsBound="True"
                                        Key="EmployeeId" Width="125px">
                                        <Header Caption="Employee ID">
                                        </Header>
                                    </igtbl:UltraGridColumn>

                                      <igtbl:UltraGridColumn BaseColumnName="EmployeeName"  IsBound="True" Key="EmployeeName" Type="DropDownList" width="250px" >
                                          <Header Caption="Employee Name">
                                                <RowLayoutColumnInfo OriginX="1" />
                                           </Header>
                                           <Footer>
                                                <RowLayoutColumnInfo OriginX="1" />
                                            </Footer>
                                        </igtbl:UltraGridColumn>
                                </Columns>
                                <AddNewRow View="Top" Visible="Yes">
                                </AddNewRow>
                            </igtbl:UltraGridBand>
Me.ultrawebgrid1.Columns(1.Type=ColumnType.DropDownList
Me.ultrawebgrid1.Columns(1.ValueList.ValueListItems.Clear()
Me.ultrawebgrid1.Columns(1.ValueList.DataSource=dsGetEmployees
Me.ultrawebgrid1.Columns(1.ValueList.DataMember=“EmployeeId”
Me.ultrawebgrid1.Columns(1.ValueList.DisplayMember=“EmployeeName”
Me.ultrawebgrid1.Columns(1.ValueList.DataBind())

关于

我相信,您可以遵循基础设施论坛的思路来处理同样的问题:


我遇到了同样的问题

用户不知道单元格数据是可编辑的,直到您按下某个键(导致更改值)下拉列表才会出现

经过多次搜索,以及许多关于使用模板列的主题。。。我发现了这个小把戏:

下拉列表的原始列代码:

Me.gs.Columns.Add("ORIGIN", "Origin")
Me.gs.Columns(Me.gs.Columns.Count - 1).BaseColumnName = "Origin.Id"
Me.gs.Columns(Me.gs.Columns.Count - 1).Type = ColumnType.DropDownList
Me.gs.Columns(Me.gs.Columns.Count - 1).ValueList.Style.TextOverflow = TextOverflow.Ellipsis
Me.gs.Columns(Me.gs.Columns.Count - 1).ValueList.Style.Font.Name = "Verdana"
Me.gs.Columns(Me.gs.Columns.Count - 1).ValueList.Style.Font.Size = FontUnit.XXSmall
Me.gs.Columns(Me.gs.Columns.Count - 1).ValueList.DisplayMember = "FriendlyAddress"
Me.gs.Columns(Me.gs.Columns.Count - 1).ValueList.ValueMember = "Id"
Me.gs.Columns(Me.gs.Columns.Count - 1).ValueList.DataBind(ShippingRetrieval.GetAllPlants(MP.CacheGet("SESSION")), Nothing, "FriendlyAddress", "Id")
现在。。。诀窍

添加第一列之前,添加标注栏时:

'add columns to grid
Me.gs.Bands(0).Key = "SHIPMENT"
Me.gs.Bands(0).CellClickAction = CellClickAction.Edit '<<<< added this
“将列添加到网格”
Me.gs.Bands(0).Key=“发货”
Me.gs.Bands(0.CellClickAction=CellClickAction.Edit'