Загрузка данных
Этап 1: Создание нового проекта
Шаг 1. Открой Visual Studio
Шаг 2. Создай новый проект
File → New → Project
Выбери WPF App (.NET Framework)
Имя: StudentHrDepartmentWPF
Расположение: выбери любую папку (например, C:\Projects)
Нажми Create
Результат: Должно открыться окно с пустой формой.
Шаг 3. Запусти проект (проверка)
Нажми F5. Должно открыться пустое окно.
Закрой окно (вернись в редактор).
Этап 2: Создание окна авторизации
Шаг 4. Открой MainWindow.xaml
В Обозревателе решений дважды кликни на MainWindow.xaml.
Полностью замени код на этот:
xml
<Window x:Class="StudentHrDepartmentWPF.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="Авторизация" Height="400" Width="450"
WindowStartupLocation="CenterScreen">
<Grid>
<StackPanel VerticalAlignment="Center" Margin="20">
<TextBlock Text="Студенческий отдел кадров"
FontSize="18"
FontWeight="Bold"
HorizontalAlignment="Center"
Margin="0,0,0,20"/>
<TextBlock Text="Логин" Margin="0,0,0,5"/>
<TextBox x:Name="txtLogin" Height="30" Margin="0,0,0,15"/>
<TextBlock Text="Пароль" Margin="0,0,0,5"/>
<PasswordBox x:Name="txtPassword" Height="30" Margin="0,0,0,25"/>
<StackPanel Orientation="Horizontal" HorizontalAlignment="Center">
<Button x:Name="btnLogin" Content="Войти" Width="100" Height="35" Margin="5" Click="btnLogin_Click"/>
<Button x:Name="btnExit" Content="Выход" Width="100" Height="35" Margin="5" Click="btnExit_Click"/>
</StackPanel>
<TextBlock x:Name="lblStatus" Text="" Foreground="Red" HorizontalAlignment="Center" Margin="0,15,0,0"/>
</StackPanel>
</Grid>
</Window>
Шаг 5. Открой MainWindow.xaml.cs
Полностью замени код на этот:
csharp
using System;
using System.Windows;
namespace StudentHrDepartmentWPF
{
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
}
private void btnLogin_Click(object sender, RoutedEventArgs e)
{
string login = txtLogin.Text.Trim();
string password = txtPassword.Password.Trim();
if (login == "admin" && password == "123")
{
MessageBox.Show("Добро пожаловать, Администратор!");
// Здесь позже откроем главное окно
}
else if (login == "student" && password == "123")
{
MessageBox.Show("Добро пожаловать, Студент!");
// Здесь позже откроем окно студента
}
else
{
lblStatus.Text = "Неверный логин или пароль!";
}
}
private void btnExit_Click(object sender, RoutedEventArgs e)
{
Application.Current.Shutdown();
}
}
}
Шаг 6. Запусти проект (F5)
Проверь:
Введи admin / 123 → должно появиться сообщение
Введи student / 123 → должно появиться сообщение
Введи что-то другое → должно появиться сообщение об ошибке
✅ Если работает — идём дальше.
Этап 3: Создание главного окна для администратора
Шаг 7. Создай новое окно
В Обозревателе решений нажми правой кнопкой на проект
Add → Window
Имя: AdminWindow.xaml
Нажми Add
Шаг 8. Открой AdminWindow.xaml и замени код
xml
<Window x:Class="StudentHrDepartmentWPF.AdminWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="Панель администратора" Height="450" Width="800"
WindowStartupLocation="CenterScreen">
<Grid>
<StackPanel VerticalAlignment="Center" HorizontalAlignment="Center">
<TextBlock Text="Панель администратора" FontSize="24" FontWeight="Bold" Margin="0,0,0,20"/>
<TextBlock Text="Добро пожаловать в систему!" FontSize="16" Margin="0,0,0,20"/>
<Button x:Name="btnLogout" Content="Выйти" Width="100" Height="35" Click="btnLogout_Click"/>
</StackPanel>
</Grid>
</Window>
Шаг 9. Открой AdminWindow.xaml.cs и замени код
csharp
using System;
using System.Windows;
namespace StudentHrDepartmentWPF
{
public partial class AdminWindow : Window
{
public AdminWindow()
{
InitializeComponent();
}
private void btnLogout_Click(object sender, RoutedEventArgs e)
{
this.Close();
MainWindow mainWindow = new MainWindow();
mainWindow.Show();
}
}
}
Этап 4: Создание окна для студента
Шаг 10. Создай новое окно
Add → Window
Имя: StudentWindow.xaml
Нажми Add
Шаг 11. Открой StudentWindow.xaml и замени код
xml
<Window x:Class="StudentHrDepartmentWPF.StudentWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="Личный кабинет студента" Height="450" Width="800"
WindowStartupLocation="CenterScreen">
<Grid>
<StackPanel VerticalAlignment="Center" HorizontalAlignment="Center">
<TextBlock Text="Личный кабинет студента" FontSize="24" FontWeight="Bold" Margin="0,0,0,20"/>
<TextBlock Text="Добро пожаловать!" FontSize="16" Margin="0,0,0,20"/>
<Button x:Name="btnLogout" Content="Выйти" Width="100" Height="35" Click="btnLogout_Click"/>
</StackPanel>
</Grid>
</Window>
Шаг 12. Открой StudentWindow.xaml.cs и замени код
csharp
using System;
using System.Windows;
namespace StudentHrDepartmentWPF
{
public partial class StudentWindow : Window
{
public StudentWindow()
{
InitializeComponent();
}
private void btnLogout_Click(object sender, RoutedEventArgs e)
{
this.Close();
MainWindow mainWindow = new MainWindow();
mainWindow.Show();
}
}
}
Этап 5: Связываем окна авторизации с главными окнами
Шаг 13. Обнови MainWindow.xaml.cs
csharp
using System;
using System.Windows;
namespace StudentHrDepartmentWPF
{
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
}
private void btnLogin_Click(object sender, RoutedEventArgs e)
{
string login = txtLogin.Text.Trim();
string password = txtPassword.Password.Trim();
if (login == "admin" && password == "123")
{
MessageBox.Show("Добро пожаловать, Администратор!");
AdminWindow adminWindow = new AdminWindow();
adminWindow.Show();
this.Close();
}
else if (login == "student" && password == "123")
{
MessageBox.Show("Добро пожаловать, Студент!");
StudentWindow studentWindow = new StudentWindow();
studentWindow.Show();
this.Close();
}
else
{
lblStatus.Text = "Неверный логин или пароль!";
}
}
private void btnExit_Click(object sender, RoutedEventArgs e)
{
Application.Current.Shutdown();
}
}
}
Этап 6: Запуск
Шаг 14. Нажми F5
Проверь:
Вход Ожидание
admin / 123 Открывается AdminWindow
student / 123 Открывается StudentWindow
Другие данные Ошибка авторизации
Итоговая структура проекта
text
StudentHrDepartmentWPF/
├── MainWindow.xaml (окно авторизации)
├── MainWindow.xaml.cs
├── AdminWindow.xaml (окно администратора)
├── AdminWindow.xaml.cs
├── StudentWindow.xaml (окно студента)
├── StudentWindow.xaml.cs
└── App.xaml
Данные для входа (в коде)
Логин Пароль Роль
admin 123 Администратор
student 123 Студент
✅ Проект готов и работает без базы данных. Напиши, получилось ли запустить