簡體   English   中英

如何在 Infragistics WebDataGrid 中為動態添加的列設置格式?

[英]How do I set formatting for a dynamically added column in Infragistics WebDataGrid?

我目前正在使用使用 Infragistics WebDataGrid 控件編寫的實用程序。 該工具允許用戶從下拉列表中選擇一個表,然后運行存儲過程從 SQL Server 獲取數據,然后將其綁定到網格。

一切都有一個默認格式,在這種情況下,日期時間列只是MM/DD/YYYY 請求包含至少這些列中的一列的時間分量。

經過多次搜索,我嘗試將代碼添加到網格的_InitializeRow事件處理程序中,但我似乎無法完全正確。 這是我想出的:

if (e.Row.Index == 0)
{
    foreach (GridRecordItem field in e.Row.Items)
    {
        if (field.Column.Key == "InsertedOnCC")
            field.Column.FormatValue = "{0:g}";
    }
}

這給了我一個錯誤,即FormatValue不能分配值,因為它是一個方法組。

這是從幾個來源拼湊起來的,沒有一個能完全達到我想要的效果。 例如,一段示例代碼總是假設有問題的列是第一列,所以我不得不添加foreach循環。

我已經看到很多人提到BoundDataFieldDataFormatString ,但我似乎無法真正找到如何訪問它們。

注意:我實際上是一名 SQL 開發人員,而不是 C# 開發人員,所以請保持溫和。 :)

謝謝!

我能夠通過將ColumnBoundDataField然后從那里使用DataFormatString來解決此問題:

        if (e.Row.Index == 0)
        {
            foreach (GridRecordItem gri in e.Row.Items)
            {
                BoundDataField field = gri.Column as BoundDataField;

                if (field.Key == "InsertedOnCC")
                    field.DataFormatString = "{0:g}";
            }
        }

使用上面的信息,我能夠讓它工作。 清潔工。 不需要循環:

TryCast(.Rows(0).Items.FindItemByKey("MyColumnName").Column, Infragistics.Web.UI.GridControls.BoundDataField).DataFormatString = "{0:G}"

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM