我正在制作UWP app.I在一个类中的xaml代码中有一个TextBox
。我在其属性中给了x:FieldModifier=public
,以便它可以在课外访问。我想在另一个类中使用,当切换开关打开时,它应该启用。
所以,我正在制作类的对象并使用这样的方法
fnp.text.IsEnabled=true
fnp是类的对象,text是文本框的名称。但它没有开火。
我该怎么做?
firstnavigatepage fnp = new firstnavigatepage();
public peoplechatting()
{
this.InitializeComponent();
}
public void MyToggle_Toggled(object sender, RoutedEventArgs e)
{
ToggleSwitch toggleSwitch = sender as ToggleSwitch;
if (toggleSwitch != null)
{
if (toggleSwitch.IsOn == true)
{
MyEllipse.Fill = new SolidColorBrush(Colors.Green);
toggleSwitch.OnContent = "Bot";
fnp.text.IsEnabled = true;
}
答案 0 :(得分:0)
没有任何代码视图,很难说清楚。
但这里有一些建议:
以下是一些适用于我的计算机的代码:
MainWindow.cs
public partial class MainWindow : Window
{
// My window object
Screen win = new Screen();
public MainWindow()
{
InitializeComponent();
win.Show();
}
private void Button_Click(object sender, RoutedEventArgs e)
{
// Simple toggle action
if (win.myText.IsEnabled == true)
win.myText.IsEnabled = false;
else
win.myText.IsEnabled = true;
}
}
这是" myText"的XAML。文本框:
<TextBox x:Name="myText" x:FieldModifier="public"/>
希望这有帮助。
编辑:从您的评论中看起来您似乎正在使用Async方法来更新GUI。
除非您使用某些代码使其可访问,否则您无法从其他线程修改GUI。查看this question了解如何使其可访问。 (查看Mark's answer,这很简单。)