2012-07-06 74 views
0

我試圖做一些顯然很容易,但我不知道爲什麼不工作。不同的datacontext文本框和它在Silverlight中的工具提示

這工作得很好:

<TextBox DataContext="{Binding ElementName=CORDONES_ESTATALESDomainDataSource, Path=Data}" Text="{Binding Path=DNA_A1}"> 
    <ToolTipService.ToolTip> 
     <ToolTip Content="{Binding Path=DNA_A1}"/> 
    </ToolTipService.ToolTip> 
</TextBox> 

我比顯示在文本框中的提示相同的內容。相反:

<TextBox DataContext="{Binding ElementName=CORDONES_ESTATALESDomainDataSource, Path=Data}" Text="{Binding Path=DNA_A1}"> 
    <ToolTipService.ToolTip> 
     <ToolTip DataContext="{Binding ElementName=TIPAJES_INTERMEDIOSDomainDataSource, Path=Data}" Content="{Binding Path=ALELOS_DNA_A2}"/> 
    </ToolTipService.ToolTip> 
</TextBox> 

這沒有顯示任何內容。請注意,唯一的變化是工具提示具有不同的DataContext,因爲domaindatasource也不同。

這是怎麼發生的?我做錯了什麼或者做不到?是因爲不同的數據上下文嗎?如果這不是這樣,我該怎麼做?

感謝

回答

0

我沒有找到一個方法來做到這一點工作,讓我解決了以下方法。

<TextBox DataContext="{Binding ElementName=CORDONES_ESTATALESDomainDataSource, Path=Data}" Text="{Binding Path=DNA_A1}"> 
<ToolTipService.ToolTip> 
    <ToolTip Name="DNA_A1Tooltip" Content=""/> 
</ToolTipService.ToolTip> 

我設置了內容爲「」和我指定提示的名稱。然後在域數據源的currentChanged事件中,我指定programaticaly價值的內容:

DNA_A1Tooltip.Content = TIPAJES_INTERMEDIOSDomainDataSource.DataView.CurrentItem.ALELOS_DNA_A1() 

我知道這是不是最完美的解決方案,但它的工作原理。

相關問題