私はここでDavid Veeneman's Bindable WPF RichTextBox私の.net 4.5プロジェクトで使用しようとしています。私のコードにコントロールとValueConverter
を追加した後、public object Convert()
だけがトリガーされますが、public object ConvertBack()
は認識されません。WPFリッチテキストボックスバインド可能で.net 4.5
このプロジェクトへのコメントを読んだ後、私は制御ソースコードの次の部分を変更しました。
private static void OnDocumentChanged(DependencyObject d, DependencyPropertyChangedEventArgs e)
{
var thisControl = (EcoRichTextBox)d;
if (thisControl.m_InternalUpdatePending > 0)
{
thisControl.m_InternalUpdatePending--;
return;
}
// Changed:
try
{
thisControl.TextBox.Document = (e.NewValue == null) ? new FlowDocument() : (FlowDocument)e.NewValue;
}
catch { }
thisControl.m_TextHasChanged = false;
}
そして、このイベントハンドラ:
private void OnTextChanged(object sender, TextChangedEventArgs e)
{
// Set the TextChanged flag
m_TextHasChanged = true;
// Changed:
Document = TextBox.Document;
}
は今ValueConverter
の両方の方法ではうまくいきましたが、private void OnNormalTextClick(object sender, RoutedEventArgs e)
などのイベントは、実行時にFatalExecutionEngineError
の原因となります。
WPF 3.5から4.5の大きな変更があるのでしょうか?
誰かがこれを回避するアイデアを持っていますか? XAML
<uc:FsRichTextBox Margin="5"
Document="{Binding Path=Ereignis.Bericht,
Converter={StaticResource flowDocumentConverter},
UpdateSourceTrigger=PropertyChanged, NotifyOnSourceUpdated=True}" />
あなたは拘束力をどのようにして表示することができますか? –
.NETフレームワーク4.6をインストールしましたか(4.5をターゲットにしていても)?リリースやデバッグで試していますか?また、私はデモとあなたの変更とボックスで再現することはできません、完全なreproコードを持っていますか? –
@SimonMourier私の現在の開発マシンでは、.NET 4.5.1がインストールされています。 4.5まだターゲット – Smartis