私はこのような標準のTextBlockから継承したカスタムWPFコントロールを作成しようとしている中でカスタムWPFコントロールを参照する方法:generic.xaml
public class DynamicDateTextBlock : TextBlock
{
static DynamicDateTextBlock()
{
DefaultStyleKeyProperty.OverrideMetadata(typeof(DynamicDateTextBlock), new FrameworkPropertyMetadata(typeof(DynamicDateTextBlock)));
}
}
応じgeneric.xamlは次のようになります。
を<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="clr-namespace:Test">
<Style TargetType="{x:Type local:DynamicDateTextBlock}">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type local:DynamicDateTextBlock}">
<Border Background="{TemplateBinding Background}"
BorderBrush="{TemplateBinding BorderBrush}"
BorderThickness="{TemplateBinding BorderThickness}" />
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</ResourceDictionary>
私がソリューションテストのルートにcontrol.csを置くと、すべて正常に動作します。 しかし、私はサブフォルダのテスト\コントロールに移動し、それに応じて名前空間を変更した場合、突然generic.xamlを与えているコンパイルエラー
名「DynamicDateTextBlockは、」名前空間「CLR名前空間に存在しません:テストを。コントロール」
は、CSの名前空間はTest.Controls
に変更されますし、XAMLで私はこのようにそれを使用しよう:xmlns:local="clr-namespace:Test.Controls"
です私は何か他に何かしなければなりませんか?
Resharperでコントロールをリファクタリングすると、同じ問題が発生します。
: '実行しようとした後errors.' を構築ありましたが、エラーリストが示すものより: 'スタイルプロパティ」を見つけることができませんTemplate 'をタイプ' Test.Controls.DynamicDateTextBlock 'に設定します。 Line 5 Position 17.' – Mikk
@Mikkお願いします。最新の回答をご覧ください。お気軽に質問してください。 – StepUp
これは奇妙なことですが、私にとっては空でも新しい新しいソリューションで手作業でも動作しません。オートコンプリートはintellisenseではまったく同じことを示唆していますが、私は結果を構築して実行することはできません。 – Mikk