2012-02-20 8 views
1

テキストボックスといくつかのボタンがあるカスタムユーザーコントロールがあります。 は私のメインのアプリケーション(MainWindow.xaml)で、私はこのように、このコントロールを使用します。カスタムユーザーコントロールwpfのボタンクリックイベント

<ScrollViewer Grid.Column="1" 
       VerticalScrollBarVisibility="Auto" 
       HorizontalScrollBarVisibility="Auto" 
       MaxHeight="300" Width="Auto" 
       HorizontalAlignment="Left"> 
    <StackPanel x:Name="MyStackPanel" 
       Margin="10,0,10,0" 
       MaxHeight="300" Width="Auto"> 
     <ItemsControl ItemsSource="{Binding}" 
         x:Name="MyItemsControl" 
         BorderThickness="0" 
         Background="Transparent"> 
      <ItemsControl.ItemTemplate> 
       <DataTemplate> 
        <StackPanel> 
         <local:MyCustomControl/> 
        </StackPanel> 
       </DataTemplate> 
      </ItemsControl.ItemTemplate> 
     </ItemsControl> 
    </StackPanel> 
</ScrollViewer> 

のItemsControlのDataContextのは、データセットからテーブルです。カスタムコントロールの各テキストボックスは、テーブルの一部のフィールドにバインドされます。私は、コードの背後にあるカスタムコントロールではなく、MainWindow.xaml.csのカスタムコントロールのボタンのクリックイベントを実装したいと考えています。どうしたらいいですか?ありがとう。

答えて

2

カスタムコントロールで新しいイベントを作成し、カスタムコントロールのコードビハインドのボタンのクリックイベントでこのイベントを発生させる必要があります。

+0

カスタムコントロールのコードの背後にある私は、MainWindow.xaml.csでいくつかの操作を行う必要があるため、clickイベントを実装できません。しかし、MainEindow.xamlでは、カスタムコントロールのbutton.clickイベントはItemTemlateにあるため、取得できません。 –

+0

@ND:カスタムコントロールで新しいイベントを宣言でき、このイベントを発生させることができますあなたのカスタムコントロールのコードの背後にあります。メインウィンドウでこの新しいイベントを購読することができます。 –

+0

ありがとうございます:)私はそれを行う.... –