[英]How to add string to WPF DataBinding in ListView in C# code behind?
我想用 C# 代碼向我的 DataBinding 添加一個字符串,並將它們顯示在 ListView 列中。 例如,我需要將“USD”字符串添加到 current_price 綁定並顯示在 ListView 中。
我試圖用 string.Format() 解決這個問題,但直到現在才成功。 我也嘗試了 string.Format("{0:C}", "current_price"),但它也不起作用。
GridView gridView = new GridView();
listView_coins.View = gridView;
gridView.Columns.Add(new GridViewColumn
{
Header = "#",
DisplayMemberBinding = new Binding("market_cap_rank")
});
gridView.Columns.Add(new GridViewColumn
{
Header = "Name",
DisplayMemberBinding = new Binding("name")
});
gridView.Columns.Add(new GridViewColumn
{
Header = "Ticker",
DisplayMemberBinding = new Binding("symbol")
});
gridView.Columns.Add(new GridViewColumn
{
Header = "Change (24h)",
DisplayMemberBinding = new Binding("price_change_percentage_24h")
});
gridView.Columns.Add(new GridViewColumn
{
Header = "Price",
DisplayMemberBinding = new Binding(string.Format("{0} USD", "current_price"))
});
for (int i = 0; i < coinDatas.Count; i++)
{
listView_coins.Items.Add(new CryptocurrencyDataModel
{
market_cap_rank = coinDatas[i].market_cap_rank,
name = coinDatas[i].name,
symbol = coinDatas[i].symbol.ToUpper(),
price_change_percentage_24h = coinDatas[i].price_change_percentage_24h,
current_price = coinDatas[i].current_price,
});
}
我想在 ListView 列中得到類似 17.260 USD 的結果。
有必要不設置格式字符串的路徑,而是將格式字符串的值設置為綁定
gridView.Columns.Add(new GridViewColumn
{
Header = "Price",
DisplayMemberBinding = new Binding(nameof(CryptocurrencyDataModel.current_price))
{
StringFormat="{0} USD"
}
});
PS也可以在XAML中設置一次output的m.netary格式,通過改變UI元素的文化語言來調整所需貨幣的顯示。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.