<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
		<id>http://nfex.ru/index.php?action=history&amp;feed=atom&amp;title=Csharp%2FC_Sharp%2FGUI_Windows_Form%2FClipboard</id>
		<title>Csharp/C Sharp/GUI Windows Form/Clipboard - История изменений</title>
		<link rel="self" type="application/atom+xml" href="http://nfex.ru/index.php?action=history&amp;feed=atom&amp;title=Csharp%2FC_Sharp%2FGUI_Windows_Form%2FClipboard"/>
		<link rel="alternate" type="text/html" href="http://nfex.ru/index.php?title=Csharp/C_Sharp/GUI_Windows_Form/Clipboard&amp;action=history"/>
		<updated>2026-04-29T16:43:27Z</updated>
		<subtitle>История изменений этой страницы в вики</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>http://nfex.ru/index.php?title=Csharp/C_Sharp/GUI_Windows_Form/Clipboard&amp;diff=56&amp;oldid=prev</id>
		<title> в 15:31, 26 мая 2010</title>
		<link rel="alternate" type="text/html" href="http://nfex.ru/index.php?title=Csharp/C_Sharp/GUI_Windows_Form/Clipboard&amp;diff=56&amp;oldid=prev"/>
				<updated>2010-05-26T15:31:18Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr style=&quot;vertical-align: top;&quot; lang=&quot;ru&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Предыдущая&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Версия 15:31, 26 мая 2010&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; style=&quot;text-align: center;&quot; lang=&quot;ru&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(нет различий)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
			</entry>

	<entry>
		<id>http://nfex.ru/index.php?title=Csharp/C_Sharp/GUI_Windows_Form/Clipboard&amp;diff=57&amp;oldid=prev</id>
		<title>Admin: 1 версия</title>
		<link rel="alternate" type="text/html" href="http://nfex.ru/index.php?title=Csharp/C_Sharp/GUI_Windows_Form/Clipboard&amp;diff=57&amp;oldid=prev"/>
				<updated>2010-05-26T11:32:48Z</updated>
		
		<summary type="html">&lt;p&gt;1 версия&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;==Clipboard Viewer (All Formats)==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt; &lt;br /&gt;
&lt;br /&gt;
using System;&lt;br /&gt;
using System.Drawing;&lt;br /&gt;
using System.Drawing.Imaging;&lt;br /&gt;
using System.IO;&lt;br /&gt;
using System.Windows.Forms;&lt;br /&gt;
class ClipViewAll : Form {&lt;br /&gt;
    Panel panelDisplay, panelButtons;&lt;br /&gt;
    RadioButton radioChecked;&lt;br /&gt;
    string[] astrFormatsSave = new string[0];&lt;br /&gt;
    public static void Main() {&lt;br /&gt;
        Application.Run(new ClipViewAll());&lt;br /&gt;
    }&lt;br /&gt;
    public ClipViewAll() {&lt;br /&gt;
        panelDisplay = new Panel();&lt;br /&gt;
        panelDisplay.Parent = this;&lt;br /&gt;
        panelDisplay.Dock = DockStyle.Fill;&lt;br /&gt;
        panelDisplay.Paint += new PaintEventHandler(PanelOnPaint);&lt;br /&gt;
        panelDisplay.BorderStyle = BorderStyle.Fixed3D;&lt;br /&gt;
        Splitter split = new Splitter();&lt;br /&gt;
        split.Parent = this;&lt;br /&gt;
        split.Dock = DockStyle.Left;&lt;br /&gt;
        panelButtons = new Panel();&lt;br /&gt;
        panelButtons.Parent = this;&lt;br /&gt;
        panelButtons.Dock = DockStyle.Left;&lt;br /&gt;
        panelButtons.AutoScroll = true;&lt;br /&gt;
        panelButtons.Width = Width / 2;&lt;br /&gt;
        Timer timer = new Timer();&lt;br /&gt;
        timer.Interval = 1000;&lt;br /&gt;
        timer.Tick += new EventHandler(TimerOnTick);&lt;br /&gt;
        timer.Enabled = true;&lt;br /&gt;
    }&lt;br /&gt;
    void TimerOnTick(object obj, EventArgs ea) {&lt;br /&gt;
        IDataObject data = Clipboard.GetDataObject();&lt;br /&gt;
        string[] astrFormats = data.GetFormats();&lt;br /&gt;
        bool bUpdate = false;&lt;br /&gt;
        if (astrFormats.Length != astrFormatsSave.Length)&lt;br /&gt;
            bUpdate = true;&lt;br /&gt;
        else {&lt;br /&gt;
            for (int i = 0; i &amp;lt; astrFormats.Length; i++)&lt;br /&gt;
                if (astrFormats[i] != astrFormatsSave[i]) {&lt;br /&gt;
                    bUpdate = true;&lt;br /&gt;
                    break;&lt;br /&gt;
                }&lt;br /&gt;
        }&lt;br /&gt;
        panelDisplay.Invalidate();&lt;br /&gt;
        if (!bUpdate)&lt;br /&gt;
            return;&lt;br /&gt;
        astrFormatsSave = astrFormats;&lt;br /&gt;
        panelButtons.Controls.Clear();&lt;br /&gt;
        Graphics grfx = CreateGraphics();&lt;br /&gt;
        EventHandler eh = new EventHandler(RadioButtonOnClick);&lt;br /&gt;
        int cxText = AutoScaleBaseSize.Width;&lt;br /&gt;
        int cyText = AutoScaleBaseSize.Height;&lt;br /&gt;
        for (int i = 0; i &amp;lt; astrFormats.Length; i++) {&lt;br /&gt;
            RadioButton radio = new RadioButton();&lt;br /&gt;
            radio.Parent = panelButtons;&lt;br /&gt;
            radio.Text = astrFormats[i];&lt;br /&gt;
            if (!data.GetDataPresent(astrFormats[i], false))&lt;br /&gt;
                radio.Text += &amp;quot;*&amp;quot;;&lt;br /&gt;
            try {&lt;br /&gt;
                object objClip = data.GetData(astrFormats[i]);&lt;br /&gt;
                radio.Text += &amp;quot; (&amp;quot; + objClip.GetType() + &amp;quot;)&amp;quot;;&lt;br /&gt;
            } catch {&lt;br /&gt;
                radio.Text += &amp;quot; (Exception on GetData or GetType!)&amp;quot;;&lt;br /&gt;
            }&lt;br /&gt;
            radio.Tag = astrFormats[i];&lt;br /&gt;
            radio.Location = new Point(cxText, i * 3 * cyText / 2);&lt;br /&gt;
            radio.Size = new Size((radio.Text.Length + 20) * cxText,&lt;br /&gt;
                                  3 * cyText / 2);&lt;br /&gt;
            radio.Click += eh;&lt;br /&gt;
        }&lt;br /&gt;
        grfx.Dispose();&lt;br /&gt;
        radioChecked = null;&lt;br /&gt;
    }&lt;br /&gt;
    void RadioButtonOnClick(object obj, EventArgs ea) {&lt;br /&gt;
        radioChecked = (RadioButton)obj;&lt;br /&gt;
        panelDisplay.Invalidate();&lt;br /&gt;
    }&lt;br /&gt;
    void PanelOnPaint(object obj, PaintEventArgs pea) {&lt;br /&gt;
        Panel panel = (Panel)obj;&lt;br /&gt;
        Graphics grfx = pea.Graphics;&lt;br /&gt;
        Brush brush = new SolidBrush(panel.ForeColor);&lt;br /&gt;
        if (radioChecked == null)&lt;br /&gt;
            return;&lt;br /&gt;
        IDataObject data = Clipboard.GetDataObject();&lt;br /&gt;
        object objClip = data.GetData((string)radioChecked.Tag);&lt;br /&gt;
        if (objClip == null)&lt;br /&gt;
            return;&lt;br /&gt;
        else if (objClip.GetType() == typeof(string)) {&lt;br /&gt;
            grfx.DrawString((string)objClip, Font, brush,&lt;br /&gt;
                            panel.ClientRectangle);&lt;br /&gt;
        } else if (objClip.GetType() == typeof(string[]))   // FileDrop&lt;br /&gt;
          {&lt;br /&gt;
            string str = string.Join(&amp;quot;\r\n&amp;quot;, (string[])objClip);&lt;br /&gt;
            grfx.DrawString(str, Font, brush, panel.ClientRectangle);&lt;br /&gt;
        } else if (objClip.GetType() == typeof(Bitmap) ||&lt;br /&gt;
                   objClip.GetType() == typeof(Metafile) ||&lt;br /&gt;
                   objClip.GetType() == typeof(Image)) {&lt;br /&gt;
            grfx.DrawImage((Image)objClip, 0, 0);&lt;br /&gt;
        } else if (objClip.GetType() == typeof(MemoryStream)) {&lt;br /&gt;
            Stream stream = (Stream)objClip;&lt;br /&gt;
            byte[] abyBuffer = new byte[16];&lt;br /&gt;
            long lAddress = 0;&lt;br /&gt;
            int iCount;&lt;br /&gt;
            Font font = new Font(FontFamily.GenericMonospace,&lt;br /&gt;
                                   Font.SizeInPoints);&lt;br /&gt;
            float y = 0;&lt;br /&gt;
            while ((iCount = stream.Read(abyBuffer, 0, 16)) &amp;gt; 0) {&lt;br /&gt;
                lAddress += 16;&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
 &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Clip Text==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
using System;&lt;br /&gt;
using System.Drawing;&lt;br /&gt;
using System.Windows.Forms;&lt;br /&gt;
   &lt;br /&gt;
class ClipText: Form&lt;br /&gt;
{&lt;br /&gt;
     string   strText = &amp;quot;Sample text&amp;quot;;&lt;br /&gt;
     MenuItem miCut, miCopy, miPaste;&lt;br /&gt;
   &lt;br /&gt;
     public static void Main()&lt;br /&gt;
     {&lt;br /&gt;
          Application.Run(new ClipText());&lt;br /&gt;
     }&lt;br /&gt;
     public ClipText()&lt;br /&gt;
     {&lt;br /&gt;
          ResizeRedraw = true;&lt;br /&gt;
   &lt;br /&gt;
          Menu = new MainMenu();&lt;br /&gt;
          MenuItem mi = new MenuItem(&amp;quot;&amp;amp;Edit&amp;quot;);&lt;br /&gt;
          mi.Popup += new EventHandler(MenuEditOnPopup);&lt;br /&gt;
          Menu.MenuItems.Add(mi);&lt;br /&gt;
          miCut = new MenuItem(&amp;quot;Cu&amp;amp;t&amp;quot;);&lt;br /&gt;
          miCut.Click += new EventHandler(MenuEditCutOnClick);&lt;br /&gt;
          miCut.Shortcut = Shortcut.CtrlX;&lt;br /&gt;
          Menu.MenuItems[0].MenuItems.Add(miCut);&lt;br /&gt;
   &lt;br /&gt;
          miCopy = new MenuItem(&amp;quot;&amp;amp;Copy&amp;quot;);&lt;br /&gt;
          miCopy.Click += new EventHandler(MenuEditCopyOnClick);&lt;br /&gt;
          miCopy.Shortcut = Shortcut.CtrlC;&lt;br /&gt;
          Menu.MenuItems[0].MenuItems.Add(miCopy);&lt;br /&gt;
   &lt;br /&gt;
          miPaste = new MenuItem(&amp;quot;&amp;amp;Paste&amp;quot;);&lt;br /&gt;
          miPaste.Click += new EventHandler(MenuEditPasteOnClick);&lt;br /&gt;
          miPaste.Shortcut = Shortcut.CtrlV;&lt;br /&gt;
          Menu.MenuItems[0].MenuItems.Add(miPaste);&lt;br /&gt;
     }&lt;br /&gt;
     void MenuEditOnPopup(object obj, EventArgs ea)&lt;br /&gt;
     {&lt;br /&gt;
          miCut.Enabled = miCopy.Enabled = strText.Length &amp;gt; 0;&lt;br /&gt;
          miPaste.Enabled = Clipboard.GetDataObject().GetDataPresent(typeof(string));&lt;br /&gt;
     }&lt;br /&gt;
     void MenuEditCutOnClick(object obj, EventArgs ea)&lt;br /&gt;
     {&lt;br /&gt;
          MenuEditCopyOnClick(obj, ea);&lt;br /&gt;
          strText = &amp;quot;&amp;quot;;&lt;br /&gt;
          Invalidate();&lt;br /&gt;
     }&lt;br /&gt;
     void MenuEditCopyOnClick(object obj, EventArgs ea)&lt;br /&gt;
     {&lt;br /&gt;
          Clipboard.SetDataObject(strText, true);&lt;br /&gt;
     }&lt;br /&gt;
     void MenuEditPasteOnClick(object obj, EventArgs ea)&lt;br /&gt;
     {&lt;br /&gt;
          IDataObject data = Clipboard.GetDataObject();&lt;br /&gt;
   &lt;br /&gt;
          if (data.GetDataPresent(typeof(string)))&lt;br /&gt;
               strText = (string) data.GetData(typeof(string));&lt;br /&gt;
   &lt;br /&gt;
          Invalidate();&lt;br /&gt;
     }&lt;br /&gt;
     protected override void OnPaint(PaintEventArgs pea)&lt;br /&gt;
     {&lt;br /&gt;
          Graphics grfx = pea.Graphics;&lt;br /&gt;
          StringFormat strfmt = new StringFormat();&lt;br /&gt;
          strfmt.Alignment = strfmt.LineAlignment = StringAlignment.Center;&lt;br /&gt;
   &lt;br /&gt;
          grfx.DrawString(strText, Font, new SolidBrush(ForeColor),&lt;br /&gt;
                          ClientRectangle, strfmt);&lt;br /&gt;
     }&lt;br /&gt;
}&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Copying from the Clipboard.==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
using System;&lt;br /&gt;
using System.Drawing;&lt;br /&gt;
using System.Collections;&lt;br /&gt;
using System.ruponentModel;&lt;br /&gt;
using System.Data;&lt;br /&gt;
using System.Windows.Forms;&lt;br /&gt;
public class MainClass {&lt;br /&gt;
&lt;br /&gt;
    public static void Main(string[] args) {&lt;br /&gt;
        IDataObject iData = Clipboard.GetDataObject();&lt;br /&gt;
        if (iData.GetDataPresent(DataFormats.Text)) {&lt;br /&gt;
            Console.WriteLine((String)iData.GetData(DataFormats.Text));&lt;br /&gt;
        }&lt;br /&gt;
        if (iData.GetDataPresent(DataFormats.Bitmap)) {&lt;br /&gt;
            Image img = (Bitmap)iData.GetData(DataFormats.Bitmap);&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Copying to the Clipboard.==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;&lt;br /&gt;
  using System;&lt;br /&gt;
  using System.Drawing;&lt;br /&gt;
  using System.Collections;&lt;br /&gt;
  using System.ruponentModel;&lt;br /&gt;
  using System.Data;&lt;br /&gt;
  using System.Windows.Forms;&lt;br /&gt;
  &lt;br /&gt;
  public class MainClass&lt;br /&gt;
  {&lt;br /&gt;
    public static void Main(string[] args)&lt;br /&gt;
    {&lt;br /&gt;
        Clipboard.SetDataObject(&amp;quot;data&amp;quot;);&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Image Clip==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
using System;&lt;br /&gt;
using System.Drawing;&lt;br /&gt;
using System.Drawing.Imaging;&lt;br /&gt;
using System.Windows.Forms;&lt;br /&gt;
class ImageClip : Form {&lt;br /&gt;
    MenuItem miCut, miCopy, miPaste, miDel;&lt;br /&gt;
    Image image;&lt;br /&gt;
    public static void Main() {&lt;br /&gt;
        Application.Run(new ImageClip());&lt;br /&gt;
    }&lt;br /&gt;
    public ImageClip() {&lt;br /&gt;
        Text = &amp;quot;Image Clip&amp;quot;;&lt;br /&gt;
        MenuItem mi = new MenuItem(&amp;quot;&amp;amp;Edit&amp;quot;);&lt;br /&gt;
        mi.Popup += new EventHandler(MenuEditOnPopup);&lt;br /&gt;
        Menu.MenuItems.Add(mi);&lt;br /&gt;
        int index = Menu.MenuItems.Count - 1;&lt;br /&gt;
        miCut = new MenuItem(&amp;quot;Cu&amp;amp;t&amp;quot;);&lt;br /&gt;
        miCut.Click += new EventHandler(MenuEditCutOnClick);&lt;br /&gt;
        miCut.Shortcut = Shortcut.CtrlX;&lt;br /&gt;
        Menu.MenuItems[index].MenuItems.Add(miCut);&lt;br /&gt;
        miCopy = new MenuItem(&amp;quot;&amp;amp;Copy&amp;quot;);&lt;br /&gt;
        miCopy.Click += new EventHandler(MenuEditCopyOnClick);&lt;br /&gt;
        miCopy.Shortcut = Shortcut.CtrlC;&lt;br /&gt;
        Menu.MenuItems[index].MenuItems.Add(miCopy);&lt;br /&gt;
        miPaste = new MenuItem(&amp;quot;&amp;amp;Paste&amp;quot;);&lt;br /&gt;
        miPaste.Click += new EventHandler(MenuEditPasteOnClick);&lt;br /&gt;
        miPaste.Shortcut = Shortcut.CtrlV;&lt;br /&gt;
        Menu.MenuItems[index].MenuItems.Add(miPaste);&lt;br /&gt;
        miDel = new MenuItem(&amp;quot;De&amp;amp;lete&amp;quot;);&lt;br /&gt;
        miDel.Click += new EventHandler(MenuEditDelOnClick);&lt;br /&gt;
        miDel.Shortcut = Shortcut.Del;&lt;br /&gt;
        Menu.MenuItems[index].MenuItems.Add(miDel);&lt;br /&gt;
    }&lt;br /&gt;
    void MenuEditOnPopup(object obj, EventArgs ea) {&lt;br /&gt;
        miCut.Enabled = miCopy.Enabled = miDel.Enabled = image != null;&lt;br /&gt;
        IDataObject data = Clipboard.GetDataObject();&lt;br /&gt;
        miPaste.Enabled = data.GetDataPresent(typeof(Bitmap)) || data.GetDataPresent(typeof(Metafile));&lt;br /&gt;
    }&lt;br /&gt;
    void MenuEditCutOnClick(object obj, EventArgs ea) {&lt;br /&gt;
        MenuEditCopyOnClick(obj, ea);&lt;br /&gt;
        MenuEditDelOnClick(obj, ea);&lt;br /&gt;
    }&lt;br /&gt;
    void MenuEditCopyOnClick(object obj, EventArgs ea) {&lt;br /&gt;
        Clipboard.SetDataObject(image, true);&lt;br /&gt;
    }&lt;br /&gt;
    void MenuEditPasteOnClick(object obj, EventArgs ea) {&lt;br /&gt;
        IDataObject data = Clipboard.GetDataObject();&lt;br /&gt;
        if (data.GetDataPresent(typeof(Metafile)))&lt;br /&gt;
            image = (Image)data.GetData(typeof(Metafile));&lt;br /&gt;
        else if (data.GetDataPresent(typeof(Bitmap)))&lt;br /&gt;
            image = (Image)data.GetData(typeof(Bitmap));&lt;br /&gt;
        Invalidate();&lt;br /&gt;
    }&lt;br /&gt;
    void MenuEditDelOnClick(object obj, EventArgs ea) {&lt;br /&gt;
        image = null;&lt;br /&gt;
        Invalidate();&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Rich-Text Paste==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
using System;&lt;br /&gt;
using System.Drawing;&lt;br /&gt;
using System.IO;&lt;br /&gt;
using System.Windows.Forms;&lt;br /&gt;
   &lt;br /&gt;
class RichTextPaste: Form&lt;br /&gt;
{&lt;br /&gt;
     string   strPastedText = &amp;quot;&amp;quot;;&lt;br /&gt;
     MenuItem miPastePlain, miPasteRTF, miPasteHTML, miPasteCSV;&lt;br /&gt;
   &lt;br /&gt;
     public static void Main()&lt;br /&gt;
     {&lt;br /&gt;
          Application.Run(new RichTextPaste());&lt;br /&gt;
     }&lt;br /&gt;
     public RichTextPaste()&lt;br /&gt;
     {&lt;br /&gt;
          ResizeRedraw = true;&lt;br /&gt;
   &lt;br /&gt;
          Menu = new MainMenu();&lt;br /&gt;
   &lt;br /&gt;
          MenuItem mi = new MenuItem(&amp;quot;&amp;amp;Edit&amp;quot;);&lt;br /&gt;
          mi.Popup += new EventHandler(MenuEditOnPopup);&lt;br /&gt;
          Menu.MenuItems.Add(mi);&lt;br /&gt;
   &lt;br /&gt;
          miPastePlain = new MenuItem(&amp;quot;Paste &amp;amp;Plain Text&amp;quot;);&lt;br /&gt;
          miPastePlain.Click += new EventHandler(MenuEditPastePlainOnClick);&lt;br /&gt;
          Menu.MenuItems[0].MenuItems.Add(miPastePlain);&lt;br /&gt;
   &lt;br /&gt;
          miPasteRTF = new MenuItem(&amp;quot;Paste &amp;amp;Rich Text Format&amp;quot;);&lt;br /&gt;
          miPasteRTF.Click += new EventHandler(MenuEditPasteRTFOnClick);&lt;br /&gt;
          Menu.MenuItems[0].MenuItems.Add(miPasteRTF);&lt;br /&gt;
   &lt;br /&gt;
          miPasteHTML = new MenuItem(&amp;quot;Paste &amp;amp;HTML&amp;quot;);&lt;br /&gt;
          miPasteHTML.Click += new EventHandler(MenuEditPasteHTMLOnClick);&lt;br /&gt;
          Menu.MenuItems[0].MenuItems.Add(miPasteHTML);&lt;br /&gt;
   &lt;br /&gt;
          miPasteCSV = new MenuItem(&amp;quot;Paste &amp;amp;Comma-Separated Values&amp;quot;);&lt;br /&gt;
          miPasteCSV.Click += new EventHandler(MenuEditPasteCSVOnClick);&lt;br /&gt;
          Menu.MenuItems[0].MenuItems.Add(miPasteCSV);&lt;br /&gt;
     }&lt;br /&gt;
     void MenuEditOnPopup(object obj, EventArgs ea)&lt;br /&gt;
     {&lt;br /&gt;
          miPastePlain.Enabled = Clipboard.GetDataObject().GetDataPresent(typeof(string));&lt;br /&gt;
          miPasteRTF.Enabled = Clipboard.GetDataObject().GetDataPresent(DataFormats.Rtf);&lt;br /&gt;
          miPasteHTML.Enabled = Clipboard.GetDataObject().GetDataPresent(DataFormats.Html);&lt;br /&gt;
          miPasteCSV.Enabled = Clipboard.GetDataObject().GetDataPresent(DataFormats.rumaSeparatedValue);&lt;br /&gt;
     }&lt;br /&gt;
     void MenuEditPastePlainOnClick(object obj, EventArgs ea)&lt;br /&gt;
     {&lt;br /&gt;
          IDataObject data = Clipboard.GetDataObject();&lt;br /&gt;
   &lt;br /&gt;
          if (data.GetDataPresent(typeof(string)))&lt;br /&gt;
          {&lt;br /&gt;
               strPastedText = (string) data.GetData(typeof(string));&lt;br /&gt;
               Invalidate();&lt;br /&gt;
          }&lt;br /&gt;
     }&lt;br /&gt;
     void MenuEditPasteRTFOnClick(object obj, EventArgs ea)&lt;br /&gt;
     {&lt;br /&gt;
          IDataObject data = Clipboard.GetDataObject();&lt;br /&gt;
   &lt;br /&gt;
          if (data.GetDataPresent(DataFormats.Rtf))&lt;br /&gt;
          {&lt;br /&gt;
               strPastedText = (string) data.GetData(DataFormats.Rtf);&lt;br /&gt;
               Invalidate();&lt;br /&gt;
          }&lt;br /&gt;
     }&lt;br /&gt;
     void MenuEditPasteHTMLOnClick(object obj, EventArgs ea)&lt;br /&gt;
     {&lt;br /&gt;
          IDataObject data = Clipboard.GetDataObject();&lt;br /&gt;
   &lt;br /&gt;
          if (data.GetDataPresent(DataFormats.Html))&lt;br /&gt;
          {&lt;br /&gt;
               strPastedText = (string) data.GetData(DataFormats.Html);&lt;br /&gt;
               Invalidate();&lt;br /&gt;
          }&lt;br /&gt;
     }&lt;br /&gt;
     void MenuEditPasteCSVOnClick(object obj, EventArgs ea)&lt;br /&gt;
     {&lt;br /&gt;
          IDataObject data = Clipboard.GetDataObject();&lt;br /&gt;
   &lt;br /&gt;
          if (data.GetDataPresent(DataFormats.rumaSeparatedValue))&lt;br /&gt;
          {&lt;br /&gt;
               MemoryStream memstr = (MemoryStream) data.GetData(&amp;quot;Csv&amp;quot;);&lt;br /&gt;
               StreamReader streamreader = new StreamReader(memstr);&lt;br /&gt;
               strPastedText = streamreader.ReadToEnd();&lt;br /&gt;
               Invalidate();&lt;br /&gt;
          }&lt;br /&gt;
     }&lt;br /&gt;
     protected override void OnPaint(PaintEventArgs pea)&lt;br /&gt;
     {&lt;br /&gt;
          pea.Graphics.DrawString(strPastedText, Font, new SolidBrush(ForeColor),&lt;br /&gt;
                          ClientRectangle);&lt;br /&gt;
     }&lt;br /&gt;
}&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	</feed>