【问题标题】:Check if paste into textbox with max length will truncate clipboard contents检查粘贴到最大长度的文本框是否会截断剪贴板内容
【发布时间】:2014-07-21 21:11:41
【问题描述】:

我的WPF 应用程序中有几个textbox 字段设置了最大字符长度。

问题:

如果您粘贴的字符串太长,它会截断该字符串以适应最大长度。

问题:

如果正在粘贴的内容的字符数大于为该 textbox 设置的最大字符长度,我如何在粘贴到 textbox 控件时检查这一点?

【问题讨论】:

  • 不确定 WPF,但在 Windows 窗体中,您可以将消息循环与拦截 WM_PASTE 消息挂钩。

标签: c# wpf


【解决方案1】:

看看Paste Event in a WPF TextBox

您可以使用类似于已接受答案的解决方案,在其中添加粘贴处理程序,并将 TextBox 的 MaxLength 与剪贴板的内容进行比较:

var tb = sender as TextBox;
var text = e.SourceDataObject.GetData(DataFormats.Text) as string;
if(text > tb.MaxLength) {
    //Do whatever it is you want to do
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-05-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多