相关疑难解决方法(0)

WPF-MVVM文本框限制为特定字符

我试图使文本框仅接受特定字符。

我的文本框绑定到以下内容:

    private string _CompanyID;
    public string CompanyID
    {
        get { return _CompanyID; }
        set
        {
            _CompanyID = UniversalHelpers.sReturnCorrectColumnName(value);
            OnPropertyChanged("CompanyID");
        }
    }
Run Code Online (Sandbox Code Playgroud)

这是被调用的函数:

    public static string sReturnCorrectColumnName(string sInput)
    {
        if(!string.IsNullOrWhiteSpace(sInput))
            return Regex.Replace(sInput, @"[^a-zA-Z]", string.Empty).ToUpper();
        else
            return sInput;
    }
Run Code Online (Sandbox Code Playgroud)

(我只允许使用AZ&AZ,没有其他内容)。

最后,我的TextBox看起来像这样:

<TextBox Text="{Binding ExcelBindings.CompanyID, UpdateSourceTrigger=PropertyChanged, Mode=TwoWay}" />
Run Code Online (Sandbox Code Playgroud)

我不明白的是,即使我的“模式”设置为“双向”,该用户仍然可以写他想要的任何内容。

我究竟做错了什么?

c# wpf mvvm

2
推荐指数
1
解决办法
6292
查看次数

标签 统计

c# ×1

mvvm ×1

wpf ×1