【发布时间】:2014-04-15 16:28:07
【问题描述】:
在我的 wpf 窗口中,有一个带有一些按钮的工具栏,如下所示,我的问题是,对于这些按钮,它们似乎可以共享一个模板,因为它们的内容具有完全相同的结构,但图像源和 TextBlock 文本是不同,那么如何删除所有按钮的重复代码?或者我必须定义一个自定义控件来执行此操作?
<ToolBar Name="CommonToolbar">
<Button Name="DownloadButton" Margin="5,0,5,0" Width="Auto" Command="{Binding Path=DownloadCmd}" ToolTip="{x:Static resx:GeneralRes.DownloadToolbarTooltip}" ToolTipService.ShowOnDisabled="True">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="16"/>
<RowDefinition />
</Grid.RowDefinitions>
<Image Grid.Row="0" Source="Resources/Download.png" />
<TextBlock Grid.Row="1" Text="{x:Static resx:GeneralRes.DownloadToolbarCaption}" />
</Grid>
</Button>
<Button Name="UploadButton" Margin="5,0,5,0" Width="Auto" Command="{Binding Path=UploadCmd}" ToolTip="{x:Static resx:GeneralRes.UploadToolbarTooltip}" ToolTipService.ShowOnDisabled="True">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="16"/>
<RowDefinition/>
</Grid.RowDefinitions>
<Image Grid.Row="0" Source="Resources/Upload.png"/>
<TextBlock Grid.Row="1" Text="{x:Static resx:GeneralRes.UploadToolbarCaption}"/>
</Grid>
</Button>
<Button Name="ManualButton" Margin="5,0,5,0" Width="Auto" ToolTip="{x:Static resx:GeneralRes.ManualToolbarTooltip}" >
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="16"/>
<RowDefinition/>
</Grid.RowDefinitions>
<Image Grid.Row="0" Source="Resources/help manual.png"/>
<TextBlock Grid.Row="1" Text="{x:Static resx:GeneralRes.ManualToolbarCaption}"/>
</Grid>
</Button>
</ToolBar>
【问题讨论】:
标签: wpf wpf-controls