C# 如何在自定义ajax工具包编辑器中防止ctrl-v?

C# 如何在自定义ajax工具包编辑器中防止ctrl-v?,c#,asp.net,ajax,toolkit,keydown,C#,Asp.net,Ajax,Toolkit,Keydown,嗨 我已经成功地制作了一个自定义ajax工具包,如我所愿,在页脚工具栏上有几个按钮。现在我还想避免crtl-v和右键单击粘贴,但已经搜索、搜索并尝试了所有内容,但没有结果。。。也许有人能引导我走上正确的道路,我希望:) 下面是我的代码(与asp.net网页上的c#一起使用),它创建了一个编辑器控件。第一部分工作正常,但最后一部分按键不工作,可能完全错误 致以最良好的祝愿, 丹麦拉尔斯 我的代码: using System; using System.Collections.Generic; us

嗨 我已经成功地制作了一个自定义ajax工具包,如我所愿,在页脚工具栏上有几个按钮。现在我还想避免crtl-v和右键单击粘贴,但已经搜索、搜索并尝试了所有内容,但没有结果。。。也许有人能引导我走上正确的道路,我希望:)

下面是我的代码(与asp.net网页上的c#一起使用),它创建了一个编辑器控件。第一部分工作正常,但最后一部分按键不工作,可能完全错误

致以最良好的祝愿, 丹麦拉尔斯

我的代码:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Windows.Forms;
using AjaxControlToolkit.HTMLEditor;


/// <summary>
/// Særlig editor tilrettet behovet hos Boost Company
/// </summary>

namespace AjaxControlToolkit.HTMLEditor.BoostToolbarButton
{
    public class Bold : AjaxControlToolkit.HTMLEditor.ToolbarButton.Bold
    {
        public override string ToolTip
        {
            get { return "Fed"; }
        }
    }
    public class Italic : AjaxControlToolkit.HTMLEditor.ToolbarButton.Italic
    {
    public override string ToolTip
        {
            get { return "Kursiv"; }
        }
    }
    public class Cut : AjaxControlToolkit.HTMLEditor.ToolbarButton.Cut
    {
        public override string ToolTip
        {
            get { return "Klip"; }
        }
    }
    public class Copy : AjaxControlToolkit.HTMLEditor.ToolbarButton.Copy
    {
        public override string ToolTip
        {
            get { return "Kopier"; }
        }
    }
    public class PasteText : AjaxControlToolkit.HTMLEditor.ToolbarButton.PasteText
    {
        public override string ToolTip
        {
            get { return "Indsæt"; }
        }
    }
    public class InsertLink : AjaxControlToolkit.HTMLEditor.ToolbarButton.InsertLink
    {
        public override string ToolTip
        {
            get { return "Indsæt/ret link"; }
        }
    }
}

namespace BoostKontroller
{

public class BoostEditor : Editor
{
    protected override void FillTopToolbar()
    {
        TopToolbar.Buttons.Add(new AjaxControlToolkit.HTMLEditor.BoostToolbarButton.Bold());
        TopToolbar.Buttons.Add(new AjaxControlToolkit.HTMLEditor.BoostToolbarButton.Italic());
        TopToolbar.Buttons.Add(new AjaxControlToolkit.HTMLEditor.BoostToolbarButton.Cut());
        TopToolbar.Buttons.Add(new AjaxControlToolkit.HTMLEditor.BoostToolbarButton.Copy());
        TopToolbar.Buttons.Add(new AjaxControlToolkit.HTMLEditor.BoostToolbarButton.PasteText());
        TopToolbar.Buttons.Add(new AjaxControlToolkit.HTMLEditor.BoostToolbarButton.InsertLink());
    }

    protected override void FillBottomToolbar()
    {

    }

    void OnKeyDown(KeyEventArgs e)
    {

        if (e.Control && e.KeyCode == Keys.V)
        {
             Clipboard.SetText(string .Empty); ;
        }

    }

}
}
使用系统;
使用System.Collections.Generic;
使用System.Linq;
使用System.Web;
使用System.Windows.Forms;
使用AjaxControlToolkit.HTMLEditor;
/// 
///Særlig编辑Tillettet behovet hos Boost公司
/// 
命名空间AjaxControlToolkit.HTMLEditor.boostToolbar按钮
{
公共类粗体:AjaxControlToolkit.HTMLEditor.ToolbarButton.Bold
{
公共重写字符串工具提示
{
获取{返回“Fed”;}
}
}
公共类斜体:AjaxControlToolkit.HTMLEditor.ToolbarButton.Italic
{
公共重写字符串工具提示
{
获取{return“Kursiv”;}
}
}
公共类剪切:AjaxControlToolkit.HTMLEditor.ToolbarButton.剪切
{
公共重写字符串工具提示
{
获取{return“Klip”;}
}
}
公共类副本:AjaxControlToolkit.HTMLEditor.ToolbarButton.Copy
{
公共重写字符串工具提示
{
获取{返回“Kopier”;}
}
}
公共类PasteText:AjaxControlToolkit.HTMLEditor.ToolbarButton.PasteText
{
公共重写字符串工具提示
{
获取{return“Indsæt”;}
}
}
公共类InsertLink:AjaxControlToolkit.HTMLEditor.ToolbarButton.InsertLink
{
公共重写字符串工具提示
{
获取{return“Indsæt/ret-link”;}
}
}
}
命名空间BoostKontroller
{
公共类BoostEditor:编辑器
{
受保护的覆盖无效FillTopToolbar()
{
添加(新的AjaxControlToolkit.HTMLEditor.BoostToolbarButton.Bold());
添加(新的AjaxControlToolkit.HTMLEditor.BoostToolbarButton.Italic());
添加(新的AjaxControlToolkit.HTMLEditor.BoostToolbarButton.Cut());
添加(新的AjaxControlToolkit.HTMLEditor.BoostToolbarButton.Copy());
添加(新的AjaxControlToolkit.HTMLEditor.BoostToolbarButton.PasteText());
添加(新的AjaxControlToolkit.HTMLEditor.BoostToolbarButton.InsertLink());
}
受保护的覆盖无效FillBottomToolbar()
{
}
void OnKeyDown(KeyEventArgs e)
{
if(e.Control&&e.KeyCode==Keys.V)
{
剪贴板.SetText(string.Empty);
}
}
}
}
您可以这样做:

$find(sControlId).get_editPanel().get_activePanel()._doc.body.onpaste = 
  function onPasteFunction()
  {
    $find(sControlId).get_editPanel().get_activePanel()._paste(false, false);
    return false;
  }
\u粘贴(假,假)
是用纯文本粘贴的,如果你想粘贴这个词,函数是
\u粘贴(true,true)


scoontrolid
是编辑器的客户端id。

为什么要阻止从剪贴板粘贴?我从来没有见过这样有意义的文本字段。这个OnKeyDown是从哪里来的?事件处理程序启动了吗?它不应该有一个
对象发送器
参数吗?