以下代码段会引发系统异常。
TextBlock selectionText = new TextBlock();
selectionText.IsTextSelectionEnabled = true;
selectionText.Text = "Hello world";
selectionText.Foreground = new SolidColorBrush(global::Windows.UI.Color.FromArgb(255, 255, 0, 0));
selectionText.SelectAll();
我的代码有什么问题?
提前致谢
答案 0 :(得分:2)
在调用selectionText
之前,您应确保显示SelectAll()
,即您应将其添加到当前页面内的面板中:
TextBlock selectionText = new TextBlock();
selectionText.IsTextSelectionEnabled = true;
selectionText.Text = "Hello world";
selectionText.Foreground = new SolidColorBrush(global::Windows.UI.Color.FromArgb(255, 255, 0, 0));
MainPanel.Children.Add(selectionText);
Dispatcher.RunAsync(CoreDispatcherPriority.Normal, selectionText.SelectAll);
请注意两项更改:
MainPanel.Children.Add()
,MainPanel
是您网页上面板控件的名称。selectionText.SelectAll()
通过Dispatcher
调用,以确保在调用执行之前selectionText
实际上已添加到面板中。答案 1 :(得分:0)
我的猜测是前景色
Color.FromArgb(255, 255, 0, 0)
第一个数字表示“Alpha”的级别,这意味着透明度。 Windows RT可能无法解决这个问题。
试试这个
Color.FromArgb(0, 255, 0, 0)