<Button
Margin="0,20,0,0"
HorizontalAlignment="Center"
Click="Button_Click"
Name="MyButton" IsEnabled="False">
<StackPanel>
<TextBlock Text="点我"
HorizontalAlignment="Center"
FontWeight="Bold" FontSize="24"></TextBlock>
<TextBlock Text="这是一个特殊的按钮"></TextBlock>
</StackPanel>
</Button>
<Button
Content="恢复触发"
Click="Button_Click_1"
Margin="0,20,0,0"
HorizontalAlignment="Center"
/>
按钮事件的建立
<Button></Button>
就是按钮组件,而上边的文字属性为为contant,比如Content="恢复触发"
在两个button中间可以插入一个StackPanel,这样就可以内部文字排版,点击按钮需要点击事件触发 Click=”Button_Click” 默认ide会帮你新建一个
之后在MainWindow内就会出现这个事件对应的函数
private void Button_Click(object sender, RoutedEventArgs e)
{
//// 创建MessageDialog
//MessageDialog tipDialog = new MessageDialog("云之幻最帅!");
//// 异步显示对话框
//await tipDialog.ShowAsync();
ishelloword = !ishelloword;
if (ishelloword )
{
MessageBox.Show("你好,世界转换为HelloWorld", "点我");
MyTextBlock.Text = "Hello World";
}
else
{
MessageBox.Show("HelloWorld转换为你好,世界","点我");
MyTextBlock.Text = "你好,世界";
}
}
private void Button_Click_1(object sender, RoutedEventArgs e)
{
//var dialog =new ContentDialog();
//dailog.primaryButtonText ="yo!";
//awit dialog.showasync();
MyButton.IsEnabled = bool.Parse("True");
//bool.Parse()是bool类型提供的静态转换方法,旨在把string类型表示的true和false转变为bool类型
}
}
IsEnabled=”False” 是按钮是否被开启,当他在MainWindows中需要将字符串转换为布尔才能正确使用 MyButton.IsEnabled = bool.Parse(“True”); 使用bool.parse转换,这样上边的按钮就会变成可以触发的状态。
因为要hello world和你好世界进行来回转换,所以需要if()处理,一般情况防止写错机会建立一个私有变量。判断的时候据判断私有变量即可。
public partial class MainWindow : Window
{
private bool ishelloword = true;
}
MessageBox.Show("HelloWorld转换为你好,世界","点我");
用来显示弹窗的,()内分别是弹窗的内同和弹窗的标题
点完确定hello world 就变成你好世界了Name="MyButton"Name="MyTextBlock"
就是给控件署名用来在MainWindows中调用的
关于async/await
async/await是一对关键字,焦不离孟,孟不离焦。它们就是鼎鼎大名的异步关键字,也是C#为人称道的一个语言特性。但由于 //MessageDialog tipDialog = new MessageDialog("云之幻最帅!");
这个库调用的是WIndowsUI的库,Wpf没有这个。
using Windows.UI.Popups;
using Windows.UI.Xaml;
using Windows.UI.Xaml.Controls;