首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在代码后面的单个事件中访问多个TextBoxes InputScope属性

在代码后面的单个事件中访问多个TextBoxes InputScope属性
EN

Stack Overflow用户
提问于 2017-04-11 10:21:18
回答 1查看 105关注 0票数 1

我正在做一个UWP项目,我在UI中有多个文本框,我已经将x:Name属性与它们附加在一起。我将所有的Textboxes绑定到一个KeyButton_Down()事件中。我希望实现将每个TextBoxTextBox属性设置为Number。每个文本框的XAML都有InputScope="Number"集。在后面的代码中,我无法访问特定TextboxTextbox属性。这是我的密码

代码语言:javascript
复制
private void TextBox_KeyDown(object sender, KeyRoutedEventArgs e)
        {
            TextBox tb = (TextBox)sender;

            InputScope scope = new InputScope();
            InputScopeName name = new InputScopeName();
            name.NameValue = InputScopeNameValue.Number;
            scope.Names.Add(name);
            string textBoxName = tb.Name;
          //  TextBox text = new TextBox();

            //this line is not working for me
           // textBoxName.InputScope = scope;
            var state = CoreWindow.GetForCurrentThread().GetKeyState(VirtualKey.Shift);
            var newState = (state & CoreVirtualKeyStates.Down) == CoreVirtualKeyStates.Down;


            if ((!char.IsControl(Convert.ToChar(e.Key)) && !char.IsDigit(Convert.ToChar(e.Key)) && (Convert.ToChar(e.Key) != '.') && !newState))
            {
                e.Handled = true;
            }

        }
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-04-11 12:15:42

我将直接使用发件人(它指向您希望访问的特定TextBox )。

代码语言:javascript
复制
tb.InputScope = new InputScope();
tb.InputScope.Names.Clear();
tb.InputScope.Names.Add(new InputScopeNameConverter().ConvertFrom(InputScopeNameValue.Number.ToString()));

你的tbTextBox抛出的发件人对象..。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43343213

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档