Xamarin 将字符串添加到 mvvm 中的条目

Xamarin adding string to entry in mvvm

我有一个条目,我希望用户输入数字并且最后总是有一个“%”。我不希望在条目旁边有一个额外的标签。到目前为止,我尝试格式化条目并将 % 添加到值中,但结果是在每个数字之后添加了符号。我失败的尝试:

Xaml 中的第一次解决方案尝试:

<Entry Text="{Binding Test, StringFormat='{0:F0}%'}"/>

视图模型中的第二次解决方案尝试:

string _test;
public string Test
        {
            get => _test;
            set
            {
                value += "%";
                SetProperty(ref _test, value);
            }
        }

在这两种情况下,如果用户输入的是 56,则条目显示为 5%6%。我明白为什么会这样,但我想不出解决办法。有什么想法吗?

检查该值是否具有 % 个字符

string _test;
public string Test
{
   get => _test;
   set
   {
      if(value.Contains("%"))
         value = value.Replace("%","");
      value += "%";
      SetProperty(ref _test, value);
   }
}