Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > WPF и Silverlight > наследование UserControl


Автор: HellMasterHaiL 19.10.2010, 15:48
Ребята, толи я сильно туплю, толи я чего не знаю.

Суть задачи такова: 
  - имеется готовый UserControl1 с неким набором методов. 
  - необходимо создать UserControl2, который унаследует набор методов UserControl1.

Собственно задача тривиальна, делаю:

- создаю обычные Silverlight UserControl

Код

namespace Archive.Views.UserControls
{
    public partial class SilverlightControl1 : UserControl
    {
        public SilverlightControl1()
        {
            InitializeComponent();
        }
    }
}


Во втором контроле соответственно делаю наследование от первого

Код

namespace Archive.Views.UserControls
{
    public partial class SilverlightControl2 : SilverlightControl1
    {
        public SilverlightControl2()
        {
            InitializeComponent();
        }
    }
}


Сгенерированный код контрола SilverlightControl2 по прежнему остается таким:
SilverlightControl2.g.i.cs
Код

public partial class SilverlightControl2 : System.Windows.Controls.UserControl {
        
        internal System.Windows.Controls.Grid LayoutRoot;
        
        private bool _contentLoaded;
        
        /// <summary>
        /// InitializeComponent
        /// </summary>
        [System.Diagnostics.DebuggerNonUserCodeAttribute()]
        public void InitializeComponent() {
            if (_contentLoaded) {
                return;
            }
            _contentLoaded = true;
            System.Windows.Application.LoadComponent(this, new System.Uri("/ArchiveClient;component/Views/UserControls/SilverlightControl2.xaml", System.UriKind.Relative));
            this.LayoutRoot = ((System.Windows.Controls.Grid)(this.FindName("LayoutRoot")));
        }
    }

Естественно все изменения в файле SilverlightControl2.g.i.cs остаются лишь до первого билда.
Как заставить правильно работать генерацию этого кода??? 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)