Listview中的Usercontrol

时间:2010-08-13 16:55:23

标签: wpf wpf-controls binding

我认为这样一个简单的问题应该是明智的,但经过几个小时的搜索,我仍然无法解决这个问题。 我可能不会想到WPF的方式,因为看起来我是互联网上唯一遇到这个问题的人:)

这是问题所在。 我有一个相当简单的listview与datatemplate(留下一些无相关的代码)

Listview XAML                                                                                                                 
                            

                            <StackPanel Orientation="Horizontal">
                                <StackPanel Orientation="Vertical">
                                    <TextBlock Text="{Binding Path=StartTime}" FontSize="14"/>
                                    <TextBlock Text="{Binding Path=EndTime}" FontSize="14"/>
                                          </StackPanel>
                                           <local:PatientListIconField PatientData="{Binding}"></local:PatientListIconField>
                                <TextBlock Margin="20,0,0,0" Text="{Binding Path=Message}" FontSize="14" Foreground="Green" FontWeight="Bold"/>
                              </StackPanel>

                        </DataTemplate>
                    </GridViewColumn.CellTemplate>
                </GridViewColumn>
                            </GridView>
                      </ListView.View>
            </ListView>

在第6行,我有这个usercontrol PatientListIconField。 这是一个用户控制,应根据要呈现的患者数据来决定 特定图像或文本标签或无。

当我在PatientData的setter处设置一个断点时,问题从未发生过。

来自用户控件PatientListIconField的代码隐藏

  public static DependencyProperty PatientDataProperty =  DependencyProperty.Register("PatientData",typeof(Patient),typeof(PatientListIconField));


   public Patient PatientData
    {
        get 
        { 
            return (Patient) GetValue(PatientDataProperty); 
        }
        set 
        { 
            SetValue(PatientDataProperty, value); 
        }
    }

有人能指出我正确的方向来解决这个问题,因为我没有线索。

Thx提前

1 个答案:

答案 0 :(得分:0)

我怀疑可能存在一些绑定错误。检查Visual Studio中的“输出”窗口以确保是否存在任何绑定错误。

以下文章也可能有所帮助。 How to detect broken WPF Data binding?

HTH