Я использовал класс System.Windows.Controls.Page в своем приложении WPF, прежде чем почувствовал необходимость создать свой собственный класс "CustomPage", производный от "System.Windows.Controls.Page",
public class CustomPage : System.Windows.Controls.Page
{
public long? CustomProperty { get; set; }
public CustomPage()
{
//some code
}
}
, чтобы
public partial class MyPage : Page
{
public MyPage()
{
InitializeComponent();
}
}
стало
public partial class MyPage : CustomPage
{
public MyPage()
{
InitializeComponent();
CustomProperty = null;
}
}
Но когда я перестраиваю свое решение, автоматически сгенерированный код обновляет мой код, создавая вторую часть класса на основе«System.Windows.Controls.Page» вместо CustomPage
/// <summary>
/// MyPage
/// </summary>
public partial class MyPage : System.Windows.Controls.Page, System.Windows.Markup.IComponentConnector {
//...
, и я получаю сообщение об ошибке типа «ваш частично определенный класс должен ссылаться на тот же базовый класс».Как использовать производный класс CustomPage вместо System.Windows.Controls.Page и избежать ошибки?Если я пытаюсь изменить свой класс в своем файле .xaml и использую <CustomPage>
вместо <Page>
, я получаю сообщение об ошибке «Класс CustomPage не поддерживается» в WPF.
[обновление 1] здесь мой файл .xaml, ничего интересного здесь, я не могу изменить свой класс <Page>
моим классом <CustomPage>
, ошибка «CustomPage не поддерживается».
<Page x:Class="DerivedPage.MyPage"
...
Title="MyPage">
<Grid>
</Grid>
</Page>
Стоит отметить, что я новичок в WPF, я не знаю, возможно ли здесь использовать мой пользовательский класс