用c#写一个登录wpf界面
时间: 2024-03-13 14:44:45 浏览: 89
好的,以下是一个简单的WPF登录界面的C#代码示例:
首先,创建一个WPF项目,然后打开MainWindow.xaml文件,将其代码修改为以下内容:
```xaml
<Window x:Class="LoginExample.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MainWindow" Height="350" Width="525">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<Label Content="用户名:" Grid.Row="0" Grid.Column="0" Margin="10"/>
<TextBox x:Name="usernameTextBox" Grid.Row="0" Grid.Column="1" Margin="10"/>
<Label Content="密码:" Grid.Row="1" Grid.Column="0" Margin="10"/>
<PasswordBox x:Name="passwordBox" Grid.Row="1" Grid.Column="1" Margin="10"/>
<Button x:Name="loginButton" Content="登录" Grid.Row="2" Grid.Column="0" Margin="10" Click="loginButton_Click"/>
<Button x:Name="exitButton" Content="退出" Grid.Row="2" Grid.Column="1" Margin="10" Click="exitButton_Click"/>
<TextBlock x:Name="errorMessage" Grid.Row="3" Grid.ColumnSpan="2" Margin="10"/>
</Grid>
</Window>
```
该代码定义了一个包含用户名输入框、密码输入框、两个按钮(登录和退出)和一个错误信息文本框的登录界面。
然后,打开MainWindow.xaml.cs文件,将其代码修改为以下内容:
```csharp
using System.Windows;
namespace LoginExample
{
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
}
private void loginButton_Click(object sender, RoutedEventArgs e)
{
// 获取用户输入的用户名和密码
string username = usernameTextBox.Text;
string password = passwordBox.Password;
// 进行登录验证,这里只是一个简单的示例,实际应用中需要进行更严格的验证
if (username == "admin" && password == "123456")
{
// 登录成功,进入主界面
this.Hide();
MainForm mainForm = new MainForm();
mainForm.ShowDialog();
this.Close();
}
else
{
// 登录失败,提示用户重新输入
errorMessage.Text = "用户名或密码错误,请重新输入!";
passwordBox.Clear();
passwordBox.Focus();
}
}
private void exitButton_Click(object sender, RoutedEventArgs e)
{
// 退出程序
Application.Current.Shutdown();
}
}
}
```
该代码中,MainWindow类继承自WPF中的Window类,用于实现登录界面。界面中的控件通过x:Name属性与代码中的变量进行绑定,当用户单击登录按钮时,程序会获取用户输入的用户名和密码,进行登录验证。如果验证成功,程序会关闭登录窗口,进入主界面;如果验证失败,程序会在错误信息文本框中显示错误信息,同时清空密码输入框并将焦点设置到密码输入框。当用户单击退出按钮时,程序会退出。需要注意的是,实际应用中需要进行更严格的输入验证和安全性考虑。
阅读全文