2016-05-31 9 views
0

私はMS Wordで複数の選択肢の質問を貼り付けることができ、ラジオボタンを保持しています。だから私は、クリップボードのデータで、ラジオボタンがチェックされているかチェックされていないことがわかっていますが、テキストボックスやリッチテキストボックスに貼り付けることができないので、新しい種類のテキストボックスを作成しなくても)は、ラジオボタンがまだクリップボードのデータに入っているときにそれを処理し、好きなユニコード文字で置き換えます。クリップボードのテキストからラジオボタンを取得

私の質問は:MS .NETフレームワークはラジオボタンを保持できるテキストボックスを提供していますか?そうでない場合、テキストデータがクリップボードにあるときにラジオボタンを検出する方法。読書のための

感謝:)

私は機能をしようとしている:。のClipboard.getData(「HTML形式」)をToStringメソッド()が、私は翻訳し、タグと混同HTMLを書きまし排出されると、正しく動作しない可能性があります。

答えて

0

私はそれを得ました、私はMSの言葉もhtmlコードを検出するので、ラジオボタンを取得すると思うので、ここで私はそれをやっています。

if (Clipboard.ContainsData("HTML Format")) 
     {     
      string data = Clipboard.GetData("HTML Format").ToString(); 

      int start, end; 
      data = data.Replace(" ", " "); 
      //data = data.Replace(Environment.NewLine + " ", " "); 
      string subData; 
      while (data.Contains('<') && data.Contains('>')) 
      { 
       start = data.IndexOf('<'); 
       end = data.IndexOf('>'); 
       subData = data.Substring(start, end - start + 1); 
       if (subData.Contains("checked=")) 
        data = data.Insert(end+1, "`"); 
       data = data.Remove(start, end - start+1); 
      } 
      foreach(string str in data.Split(Environment.NewLine.ToCharArray())) 
      { 
       if (!string.IsNullOrWhiteSpace(str)) 
       {       
        builder.Append(str); 
        builder.Replace(" ",string.Empty); 
        builder.Replace(" ", string.Empty); 
        builder.Append(Environment.NewLine); 
       } 

      } 

      richTextBox1.Text = builder.ToString(); 
      MessageBox.Show("complete"); 
      Clipboard.SetText(builder.ToString()); 
      builder.Clear(); 
     } 

このコードは完璧ではありませんが、私の問題は解決しました。

関連する問題