2012-06-05 38 views
-1

我從來沒有使用過wpf數據網格,並試圖格式化一些十進制列,以便使用基於該行其他列值的格式的特定值。DataGrid十進制格式轉換器

過去使用Infragistics XamDataGrid,我能夠爲XamCurrencyEditor設置樣式,設置「Format」和「Mask」的值,並使用我寫的多值轉換器,傳遞DataItem。

網格列以編程方式創建。所以,我創建了一個領域,像這樣:

var field = new DataGridTextColumn { Header = item.Name, Binding = new Binding("[" + item.Name + "].Value") { Mode = BindingMode.TwoWay } }; 

此字段將包含十進制值(即使列只是一個文本列)。

如何在此列中添加一些格式來考慮數據對象中的其他值?我不知道如何引用實際綁定的數據行本身,以將數據和單元格值一起傳遞給轉換器。

+0

任何具體理由downvote,所以我下次可以避開它? – Flack

回答

0

不知道如果小數點實在是字符串但是這是XAML語法小數財產

綁定的StringFormat = DecValue它是如何工作的:{0:N2}}

+0

謝謝布萊姆。如果我需要根據行的另一列計算格式(小數位數),你知道它是如何工作的嗎? – Flack

+0

你需要一個多值轉換器。 http://msdn.microsoft.com/en-us/library/system.windows.data.multibinding.converter.aspx – Paparazzi

+0

嘿布萊姆。我瞭解多值轉換器。事情是我不知道該怎麼實際綁定,即。如何訪問數據網格中的綁定數據行。 – Flack