我有一個綁定到一些枚舉類型的組合框。我想知道如何爲枚舉項目添加空間。我試圖使用轉換器,但失敗了。 枚舉類型是這樣如何在UWP中的組合框內添加項目的空間?
public enum MaxEEAge
{
TwoWeeks = 0,
OneMonth = 1,
ThreeMonths = 2,
SixMonths = 3,
All = 4,
}
我想組合框顯示類似「兩個星期」,而不是TwoWeeks
我有一個綁定到一些枚舉類型的組合框。我想知道如何爲枚舉項目添加空間。我試圖使用轉換器,但失敗了。 枚舉類型是這樣如何在UWP中的組合框內添加項目的空間?
public enum MaxEEAge
{
TwoWeeks = 0,
OneMonth = 1,
ThreeMonths = 2,
SixMonths = 3,
All = 4,
}
我想組合框顯示類似「兩個星期」,而不是TwoWeeks
你有幾個選項,
添加[Description]
屬性,然後把它拿來在需要的時候:
[Description("Two weeks")]
TwoWeeks = 0
或
在Unity中實現一些方法,如ObjectNames.NicifyVariableName。
使用集合,而不是像這樣
public class MaxXXAgeMembers
{
public MaxXXAge MaxXXAge { get; private set; }
public string Description { get; private set; }
public static readonly IReadOnlyList<MaxXXAgeMembers> Options = new ReadOnlyCollection<MaxXXAgeMembers>(new[]
{
new MaxXXAgeMembers { MaxXXAge = MaxXXAge.OneDay, Description = Strings.SettingSync_OneDay},
.......
});
public static MaxXXAgeMembers FromMaxXXAge(MaxXXAge maxXXAge)
{
return Options.First(option => option.MaxXXAge == maxXXAge);
}
}
寫的枚舉,通過使用FromMaxXXAge自己的轉換器,它會很容易實現這一點。
綁定到這個
public IReadOnlyList<MaxXXAgeMembers> MaxXXAgeMemberGroup { get { return MaxXXAgeMembers.Options; } }
添加[說明]似乎不適合我的情況下工作,但我做的是包含枚舉和描述字符串,然後寫一個轉換器來實現同樣的效果類。使用集合而不是枚舉。謝謝! – litaoshen