2010-07-22 127 views
1

我的應用程序中有大約30個視圖和相應的虛擬機。我在大多數用戶控件旁邊有一個HelpButton,它給出了該字段的用途。當用戶點擊該Button時,將打開一個Popup並給出說明。在所有視圖中使這個功能可重用的最佳方式是什麼?可重複使用的幫助按鈕和幫助彈出

我已經創建了ControlTemplateHelpButton和幫助Popup但我可以走得更遠嗎?謝謝。

<Style x:Key="HelpButton" TargetType="{x:Type Button}" > 
    <Setter Property="Template"> 
     <Setter.Value> 
      <ControlTemplate TargetType="{x:Type Button}"> 
       <Ellipse Focusable="True" Height="16" Width="16"> 
        <Ellipse.Fill> 
         <ImageBrush ImageSource="../../Resources/Icons/Help.png" /> 
        </Ellipse.Fill> 
       </Ellipse> 
      </ControlTemplate> 
     </Setter.Value> 
    </Setter> 
</Style> 

回答

1

我看到它已經有一段時間,因爲這個問題被問過,但我想我會的情況下,其他人遇到這個問題答覆,並正在尋找一個解決方案。

把它放在一個單獨的Resources.xaml資源字典可訪問您所有其他觀點:

<ResourceDictionary xmlns...> 
    <Style x:Key="HelpButton" TargetType="{x:Type Button}" > 
     ... 
    </Style> 
</ResourceDictionary> 

然後從您的參考資料使用它(因爲你毫無疑問之前所做的那樣)在您的XAML像這樣:

<UserControl xmlns...> 
    <UserControl.Resources> 
     <ResourceDictionary Source="Resources.xaml"/> 
    </UserControl.Resources> 

    <Button Style="{StaticResource HelpButton}" /> 
</UserControl>