从Controltemplate的WPF按钮不可见

问题描述:

我想从两个ControlTemplates实例化两个控件(一个扩展器和一个按钮)。他们停靠在一个Dockpanel(左和右)。扩展器是可见的,它工作正常,但按钮不可见。 按钮在App.xaml中的控件模板:从Controltemplate的WPF按钮不可见

... 
<ControlTemplate x:Key="OpenFileButton" TargetType="{x:Type Button}"> 
     <Image Name="OpenFileButton" Source="F:\AudioNodeGUI_XAML\images\filebutton.jpg"> 

     </Image> 
</ControlTemplate> 
... 

而且在用户控件的实例:

<Grid> 
    <Image Source="F:\AudioNodeGUI_XAML\images\FileInputNode.jpg"/> 
    <DockPanel Name="dock" Width="151" Height="20" Margin="27,53,122,139"> 
     <Expander Name="expander" Template="{StaticResource FileExpander}" Height="20" Width="41" PreviewMouseLeftButtonUp="expand" DockPanel.Dock="Left"> 
      <ListView Name="usedFiles" Background="Black" BorderBrush="Transparent" BorderThickness="0" Width="140" Height="120" Opacity="0.5"> 
      </ListView> 
     </Expander> 
     <Button Name="OpenFileButton" Template="{StaticResource OpenFileButton}" DockPanel.Dock="Right" /> 
    </DockPanel> 
</Grid> 

但按钮是不可见的,无论是在设计(只是轮廓),也不在执行中。我究竟做错了什么?

+0

尝试添加一个大小到按钮 – zamoldar

+0

请熟悉像WPF Snoop的WPF检查器。他们允许检查视觉树,玩属性值并修复很多错误。 – Maxim

我怀疑你的问题只是图像文件的不正确路径。不幸的是,在设计器和输出窗口中都不会有关于这种错误的提示。但是,如果你有ReSharper,它应该突出文件的路径,如果它不存在

+0

路径是正确的,我检查了它。 – Ben

+0

我解决了这个问题,因为我删除了边距并重写了它。我不知道,问题实际上在哪里。 – Ben