Pergunta

Eu tenho um conjunto de UserControls que precisam ter algumas propriedades semelhantes. Assim que tiver definido um subclasse abstrata de UserControl que define essas propriedades e atualizados os .xaml.cs e .g.cs arquivos para herdar desta classe base. Todos os compila bem e funciona bem. Ótimo! Mas .... arquivos .g.cs são gerados e será regenerado, assim como faço para dizer Mistura ou Visual Studio para manter herança de minha classe base, em vez de UserControl?

Foi útil?

Solução

Você precisa mudar o XAML um pouco para prefixar a declaração UserControl com um espaço de nomes:

<local:MyBaseControl x:Class="MyNameSpace.MyControl"
    xmlns:local="clr-namespace:MyNameSpace"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">

    <!-- Content -->
</local:MyBaseControl>

Onde MyNamespace é o seu namespace (duh!), MyBaseControl é a sua classe base e MyControl é o seu controle que herda de MyBaseControl. O x: Class parte não precisa estar no mesmo namespace, eu só mantiveram o mesmo para o exemplo

.

Mais informações aqui e aqui .

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top