如何在数据绑定GridViewComboBoxColumn中显示自定义文本

时间:2015-12-21 16:04:53

标签: c# vb.net winforms telerik radgridview

我正在研究telerik的RadGridView。我有一个“GridViewComboBoxColumn”,其中包含一个字符串列表作为数据源。

现在的问题是,当我使用数据填充网格视图时,数据中的值可能在该列的字符串数据源中不可用,从而导致空白值。

我尝试将DropDownStyle设置为RadDropDownStyle.DropDown,但这并没有改变任何东西。我只需要显示数据,即使下拉列表中没有这些数据。

以下是一些可以帮助您更好地理解它的代码。

    Dim lstValues As New List(Of String)
    lstValues.Add("Approved")
    lstValues.Add("Declined")
    lstValues.Add("Pending")

    Dim col5 As GridViewComboBoxColumn = RadGridView1.Columns("column2")
    col5.DataSource = lstValues
    col5.DropDownStyle = Telerik.WinControls.RadDropDownStyle.DropDown

现在正在添加的行将会跟随。

    RadGridView1.Rows.Add("Application Name", "Processing")

正如您所看到的,column2没有名为“Processing”的项目,因此它不会显示并显示为空白。

提前感谢您的帮助。

此致

1 个答案:

答案 0 :(得分:0)

您可以使用formatting events并将单元格文本设置为您需要的任何内容,但请注意,单元格值不会因此而更改,但这是我所需要的。< / p>

 void radGridView1_CellFormatting(object sender, Telerik.WinControls.UI.CellFormattingEventArgs e)
    {
        if (e.Column.Name == "column2" && e.Row.Cells["someColumn"].Value == something)
        {
            e.CellElement.Text = "some text";
        }
        else
        {
            e.CellElement.ResetValue(LightVisualElement.TextProperty, ValueResetFlags.Local);
        }
    }