Является ли хорошей практикой иметь Страницы, которые наследуются от пользовательского класса, который сам наследует от Страницы? - PullRequest
0 голосов
/ 28 марта 2019

Самое смешное, что это сработало. У компилятора не было проблем с кодом, хотя это то, чего я никогда не видел (возможно, потому что я новичок). Я хотел бы использовать вновь унаследованную базовую страницу / класс как место для хранения часто используемого кода, чтобы мне не пришлось ничего дублировать. Посмотрите здесь:

public sealed partial class HumanPage : SpeciesBasePage;
public sealed partial class AnimalPage : SpeciesBasePage;
public class SpeciesBasePage : Page;

Очевидно, это работает, потому что SpeciesBasePage реализует класс Page. Таким образом, вы также увидите, что связанная страница XAML будет иметь другой базовый класс в качестве открывающего тега:

<local:SpeciesBasePage 
    x:Class="PageInheritanceProject.HumanPage" 
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    ...>
    <Grid>
        <TextBlock Text="Hello, world!" />
    </Grid>
</local:SpeciesBasePage>

Это нормально, делать это? Спасибо!

1 Ответ

1 голос
/ 28 марта 2019

Это довольно стандартная цепочка наследования.В условиях c #.Две вещи, на которые следует обратить внимание.

1)

Использование страниц - это то, о чем многие коммерческие группы могут спросить.

Многие команды вообще не используют страницы и вместо этого используютusercontrols (размещено в contentcontrols).

2)

Наследование от страниц.Вы не можете наследовать xaml, так почему вы наследуете элемент управления пользовательского интерфейса, который, скорее всего, является контейнером?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...