a) 我怎样才能简单轻松地将小数点编辑为 * 100? b) 我可以显示 % 符号吗?
您可以使用UnFocused 事件将十进制值显示为 % 符号。
Xaml:
<Entry x:Name="entry" Unfocused="entry_Unfocused"/>
代码:
private void entry_Unfocused(object sender, FocusEventArgs e)
{
var entry = sender as Entry;
decimal value;
if (Decimal.TryParse(entry.Text, out value))
{
entry.Text = value.ToString("P");
}
else
{
DisplayAlert("Error", "Please input decimal", "Cancel");
}
}
c) 我可以有条件地进行转换:当字段Y = 1时,显示为百分比,当字段Y = 2时,显示为小数?
Xaml:
<StackLayout>
<Label x:Name="label" Text="Y:" />
<Entry x:Name="entry_Y" />
<Entry x:Name="entry" Unfocused="entry_Unfocused" />
</StackLayout>
代码:
private void entry_Unfocused(object sender, FocusEventArgs e)
{
var entry = sender as Entry;
if (entry_Y.Text=="1")
{
decimal value;
if (Decimal.TryParse(entry.Text, out value))
{
entry.Text = value.ToString("P");
}
else
{
DisplayAlert("Error", "Please input decimal", "Cancel");
}
}
else if (entry_Y.Text == "2")
{
decimal value;
if (Decimal.TryParse(entry.Text, out value))
{
entry.Text = value.ToString();
}
else
{
DisplayAlert("Error", "Please input decimal", "Cancel");
}
}
}