Есть ли лучший способ унаследовать окно в WPF - PullRequest
3 голосов
/ 25 октября 2011

В winform мы можем легко наследовать. Но в WPF мы не можем наследовать класс, который содержит XAML. Поэтому, когда мне нужно обобщить атрибут какого-либо окна, я создаю базовый класс без XAML. Например, я хочу, чтобы все окна запускались в центре экрана. Я использую код в базовом классе (этот класс не содержит XAML)

namespace VBDAdvertisement
{
    public class BaseWindow:Window
    {
        public BaseWindow()
        {
            this.WindowStartupLocation = WindowStartupLocation.CenterScreen;
        }
    }
}

Это просто для простой задачи. На мой взгляд, для более сложной задачи использование кода за строкой не является хорошей идеей. Поэтому мне интересно, есть ли лучший способ наследовать окно в WPF (что-то ближе к наследованию winform)?

Ответы [ 2 ]

2 голосов
/ 25 октября 2011

Этот пост объясняет, что вы уже знаете, поскольку xaml не поддерживает визуальное наследование.Решением, которое они предоставили, является создание UserControl, который предоставляет ваши общие свойства.

1 голос
/ 13 апреля 2016

На самом деле, эта тема учит, как наследовать окно без использования UserControl

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