[英]Show Usercontrol triggered from another Usercontrol WPF C#?
我在 c# 中有一個 WPF 應用程序我有兩個用戶控件和主窗口,我的第一個用戶控件是 usercontrol1,它通過一個按鈕和事件單擊來保存我的菜單,我在我的主窗口名稱 uscholder 上有一個網格來加載我發送的 usercontrol2從我的 usercontrol1 上的按鈕的事件單擊中。
這是我的 usercontrol1.cs
public partial class UserControl1 : UserControl
{
public UserControl1()
{
InitializeComponent();
}
private void Button_Click(object sender, RoutedEventArgs e)
{
UserControl2 usc = new UserControl2();
MainWindow maingrid = new MainWindow();
if (maingrid.uscholder != null)
{
maingrid.uscholder.Children.Clear();
maingrid.uscholder.Children.Add(usc);
}
else
{
maingrid.uscholder.Children.Add(usc);
}
}
}
這是我的 XAML
<Window x:Class="WpfApp5.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:local="clr-namespace:WpfApp5"
mc:Ignorable="d"
Title="MainWindow" Height="450" Width="800">
<Grid >
<local:UserControl1 HorizontalAlignment="Left" Width="262"></local:UserControl1>
<Grid x:Name="uscholder" Margin="267,0,-0.4,0"/>
</Grid>
</Window>
這是我的用戶控件 XAML
<UserControl x:Name="use1" x:Class="WpfApp5.UserControl1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:local="clr-namespace:WpfApp5"
mc:Ignorable="d"
d:DesignHeight="450" Width="226.303">
<Grid Margin="0,0,0.4,-0.4">
<Button Content="Button" HorizontalAlignment="Left" Margin="42,166,0,0" VerticalAlignment="Top" Width="75" Click="Button_Click"/>
</Grid>
</UserControl>
在您的主 windows 上使用“FindControl”function 並按 UserControl 名稱搜索以訪問其中每個實例的實例。 之后,您可以直接控制每個 UserControl 並執行選擇或捕獲按鈕單擊。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.