2016-06-14 5 views
-1

私のWPFアプリケーションには、Sharepointサイトからデータをバインド/プルするxamlデータグリッドテンプレートがあります。各行にはツールヒント付きのボタンがあり、テキストはこの接続から動的にロードされます。ユーザーがボタンをクリックすると、ツールチップテキストがWindowsクリップボードにコピーされます。ちょうど最近、既存のコードが機能しなくなり、動的にロードされたツールチップのテキストをコードで使用することができなくなっているようです。私は手動でテキストを設定してクリップボードにコピーすることができるので、クリップボードを除外しました。そして、UIに動的にロードされたテキストが表示され、接続できなくなります。以下は、私はクリックイベント内のテキストを取得するために使用する方法である:c#wpf tooltip、コード内にツールヒントテキストを取得できません

var buttonTemplate = ((Button)sender).ToolTip; 
var buttonTTtext = ((TextBlock)buttonTemplate).Text; 
System.Windows.Clipboard.SetText(buttonTTtext.ToString()); 

は、ここで私はデータグリッドテンプレートで使用していXAMLさ:助けを

<mui:ModernButton Click="someButton_Click" Tag="{Binding Path=MyTemplate}" > 
<mui:ModernButton.ToolTip> 
<TextBlock Text="{Binding Path=template}" TextWrapping="Wrap" /> 
</mui:ModernButton.ToolTip> 
</mui:ModernButton> 

答えて

-1

おかげで...ツールチップテキストがボタンのDataContextにありました。

Button btn = (Button)sender; 
var dc = btn.DataContext.GetType().GetProperty("template").GetValue(btn.DataContext, null); 
+0

私は、これは、誰かがあなたを助けるためにしようとした場合、コミュニティだと思い、あなたが自分で答えを見つける、彼らは自分のコメントを削除し、あなたの質問と答えをdownvoteします:私はこのコードで私の問題を解決しました。 (頭を揺らす) – Russell

関連する問題