2
如何在不使用值轉換器的xaml 中將字符串屬性格式化爲電話號碼格式。我也使用 數據註釋[電話]。 我試過這個,但它不工作。String.format xaml電話號碼
<TextBlock Text="{Binding Person.Phone, StringFormat=\{0:(000)000\-0000\}}"/>
如何在不使用值轉換器的xaml 中將字符串屬性格式化爲電話號碼格式。我也使用 數據註釋[電話]。 我試過這個,但它不工作。String.format xaml電話號碼
<TextBlock Text="{Binding Person.Phone, StringFormat=\{0:(000)000\-0000\}}"/>
下面是如何做到這一點在第一切口:
public class ContactViewModel : INotifyPropertyChanged
{
private Contact _contact;
public ContactViewModel(Contact contact)
{
_contact = contact;
}
public String Phone
{
get
{
var builder = new StringBuilder(_contact.Phone);
builder.Insert(6, '-');
builder.Insert(3, ')');
builder.Insert(0, '(');
return builder.ToString();
}
}
}
然後在XAML,我只是綁定到Phone
屬性,但使用該視圖模型適配層,而不是直接結合在模型對象上。這是View Model最顯着的特點:使模型適應視圖。
不工作怎麼樣?另外,使用一個該死的值轉換器。你可能會在這個問題,如果你:)創建一個類型來存儲電話號碼和IVC將該類型轉換爲文本,然後再回來。將是最簡單的事情。 – Will
@Will從你使用的語言我看到你也不喜歡價值轉換器...無論如何感謝 –
什麼是輸入類型?串?舉一個你使用的數據的例子... – codekaizen