從這樣的答案來看,xaml 繼承似乎適用于 WPF 和 UWP。
它適用于 WinUI 3 嗎?
使用這樣的代碼:
<local:YourBaseClass x:Class="MyApp.ChildClass"
...
xmlns:local="clr-namespace:MyApp">
</local:YourBaseClass>
我收到錯誤:
Error WMC0001 Unknown type 'YourBaseClass' in XML namespace 'clr-namespace:MyApp'
uj5u.com熱心網友回復:
它適用于 WinUI 3 嗎?
是的。它幾乎完全一樣。
創建繼承自的基類
Microsoft.UI.Xaml.Window:public class YourBaseClass : Microsoft.UI.Xaml.Window { public YourBaseClass() : base() { Title = "Title..."; } }修改 MainWindow.xaml.cs 以從新的基類繼承:
public sealed partial class MainWindow : YourBaseClass { public MainWindow() { this.InitializeComponent(); } private void myButton_Click(object sender, RoutedEventArgs e) { myButton.Content = "Clicked"; } }修改 MainWindow.xaml 中的根元素:
<local:YourBaseClass x:Class="WinUI3App.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:local="using:WinUI3App" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" mc:Ignorable="d"> <StackPanel Orientation="Horizontal" HorizontalAlignment="Center" VerticalAlignment="Center"> <Button x:Name="myButton" Click="myButton_Click">Click Me</Button> </StackPanel> </local:YourBaseClass>
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/358459.html
