【问题标题】:getting value from other column besides the valuemember column in Infragistics ultracombo从 Infragistics ultracombo 中的 valuemember 列之外的其他列获取值
【发布时间】:2008-12-17 17:33:31
【问题描述】:

我对使用基础设施控件(昨天开始)还很陌生。虽然它们(非常)令人印象深刻,但它们确实增加了另一层复杂性,我正在蒙混过关。所以我在问我觉得这是一个相当简单的问题:

我试图从组合框中显示的列之外的另一列中获取值。到目前为止,我所有的尝试都只获取了标题列的值,而不是选择的行列中的值。

特别是我想从我的Ultracombobox中选择一个行时的值,然后将其放在文本框中。 到目前为止,我的以下代码将重新运行标题列 (LastName),无论我选择哪一行,都没有其他任何内容。

Private Sub ucboPatientInfo_RowSelected(ByVal sender As Object, ByVal e As Infragistics.Win.UltraWinGrid.RowSelectedEventArgs) Handles ucboPatientInfo.RowSelected
        ucboPatientInfo.ValueMember = "accounts"
        LastName = ucboPatientInfo.SelectedRow.Band.Columns(1).ToString

我添加了:“ucboPatientInfo.ValueMember = 'accounts'”以帮助澄清我的代码在做什么它实际上不在这部分代码中。

请帮忙

【问题讨论】:

    标签: vb.net visual-studio combobox infragistics ultracombo


    【解决方案1】:

    看起来您找到了解决自己问题的有效解决方案。我想我会添加更多信息和要考虑的事情。

    您可能希望避免对单元格进行硬索引引用,以防将来在向网格的数据源中添加新数据时位置发生变化。假设您在 lastName 之前插入另一列,现在您的 .Cells(5) 将返回不正确的数据。

    尝试使用 Cells("columnName") 进行如下访问:

    LastName = ucboPatientInfo.Cells("LastName").Value
    

    您还应该尝试在事件中使用 eventArgs 和 sender 对象,并避免直接控制引用。所以你的代码可能看起来像这样:

    LastName = e.Row.Cells("LastName").Value.ToString()
    

    很高兴看到你在任何情况下都能解决问题。

    【讨论】:

      【解决方案2】:

      找到正确的组合:

      LastName = ucboPatientInfo.Cells(5).Value
      

      【讨论】:

        猜你喜欢
        • 2010-10-04
        • 1970-01-01
        • 2018-07-16
        • 1970-01-01
        • 2021-03-24
        • 2022-12-05
        • 2021-11-16
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多