2011-03-22 38 views
0

所以我有这样的代码,我不能用绑定!在这种情况下不能使用绑定?

 <ListView.View> 
      <GridView> 
       <GridViewColumn Header="File name"> 
        <GridViewColumn.CellTemplate> 
         <DataTemplate> 
          <DockPanel> 
           <Image Width="16" Height="16" VerticalAlignment="Center" HorizontalAlignment="Left"> 
            <Image.Source> 
             <MultiBinding Converter="{StaticResource fic}"> 
              <Binding Path="FileName" /> 
             </MultiBinding > 
            </Image.Source> 
           </Image> 
           <TextBlock Margin="16,0,0,0"> 
            <Binding Path="FileName" /> 
           </TextBlock> 
          </DockPanel> 
         </DataTemplate> 
        </GridViewColumn.CellTemplate> 
       </GridViewColumn> 
      </GridView> 
     </ListView.View> 

龙无聊例外删除


       <TextBlock Margin="16,0,0,0"> 
            <TextBlock.Text> 
             <Binding Path="FileName" /> 
            </TextBlock.Text> 
           </TextBlock> 

...看起来工作!

回答

1

您无法通过其子TextBlock的文本绑定。里面<TextBlock>标签

+2

''工作... – Vercas 2011-03-22 11:24:06

+1

' <绑定路径= “文件名”/> '工作! – Vercas 2011-03-22 11:30:20

+0

@Vercas,@SLaks是对的。 ' ...'相当于'标签,它会尝试绑定到子女(或内容)的属性。 – 2011-03-22 11:39:27

2

事情是包含文本块,它可以是一大堆跨度和其他文本片段内的项目。

如果您需要在文本块绑定,您需要绑定到Text属性,你已经在你的问题做。它是一个支持此绑定的DependencyProperty。

文本块内的所有项目不支持直接绑定,也不支持直接把绑定对象在那里。但是,您可以使用绑定的DependencyProperty来放置另一个控件。

+0

啊,对不起,但SLaks的答案更快,并且让我解决了我的问题。 – Vercas 2011-03-22 12:03:49

+0

很酷。 :-) – 2011-03-22 12:12:02