2010年5月11日火曜日

UserControlを独自の基本クラスから継承する方法

下図のように似たような構造のUI要素が多い場合は、UserControlを作るにしてもまとめた機能を基本クラスにおきたくなる。


しかし、Code behindで継承元をUserControlから独自の基本クラス(BaseUserControl)へと下記のように変更しても「Partial Declaration may not have different base classes.」とコンパイルエラーが発生する。

// これだけじゃ駄目
public partial class Keyword : BaseUserControl{ }

この問題の解決方法はXAMLを下記のように変更する必要がある。

<localModel:BaseUserControl x:Class="MyWebCrawler.Controls.Keyword"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:localModel="clr-namespace:MyWebCrawler.Models">
</localModel:BaseUserControl>

0 件のコメント:

コメントを投稿