2009-08-13 4 views
1

나는 사용자가 어떤 데이터를 입력하는 프로그램을 가지고 있고 그것은 양식 편지를 만들고이 클립 보드에 copys전송 텍스트는 밑줄

사용자 중 일부는 다시 와서 그들이 어떤 부분을 좋아 것이라고 말했다 현재

Clipboard.SetDataObject(sb.ToString(), true); 
를 사용

메신저

을 밑줄 문자로 뭔가를 표시하는 방법을 알고하지 않습니다 그것을

을 (등 헤드 라인) 쉽게 읽을 그들은 그것을 보내는 사람들을 돕기 위해 밑줄합니다

여기서 sb는 문자열 작성기입니다

어떻게하면 밑줄 표시된 것을 표시 할 수 있습니까?

답변

1

가정 사용자가 (예 : Microsoft Word) HTML을 인식하는 프로그램에 붙여 넣을, 당신은이 작업을 수행 할 수 있습니다

string underlinedText = "<span style=\"text-decoration: underline;\">" + 
          sb.ToString() + "</span>"; 
Clipboard.SetDataObject(underlinedText, true); 

이를 클립 보드 버퍼에 복사 된 전체 텍스트 조각을 강조한다.

+0

텍스트 장식 :, 아니요; –

+0

감사합니다. 결정된. :) –

-2

어디에서이 데이터를 붙여 넣습니까? 코드가 클라이언트 또는 웹 응용 프로그램입니까?

WYSIWYG 컨트롤 또는 RichTextBox를 추가하는 것이 좋습니다. 이렇게하면 사용자가 잘라내어 붙여 넣기 전에 프로그램에서 서식을 지정할 수 있습니다.

+0

더 자세한 정보는 적절한 대답을 제공하는 데 필요합니다 –

2

RTF는 오래되었으므로 더 나은 지원을 제공하고 HTML의 MS 끔찍한 해석이 아닌 적절한 텍스트 문서로 끝날 가능성이 높으므로 HTML 대신 HTML로 간주 할 수 있습니다. 또한 RTF는 HTML처럼 페이지 나누기를 지원합니다. 그러나 RTF의 마크 업이 좀 이상하다고 경고하십시오. 예를 들면 :

Clipboard.SetText(@"{\rtf1\ansi\ansicpg1252\deff0\deflang2057{\fonttbl{\f0\fswiss\fcharset0 Arial;}}\viewkind4\uc1\pard\f0\fs20 text \ul text\ulnone text\par}", TextDataFormat.Rtf); 

specification for RTF는 마이크로 소프트 here에서 obtainied 찾을 수 있습니다.

+0

Outlook에서 작동 할 것이라고 생각하십니까? – Crash893

+0

C#으로 클립 보드에 복사 한 다음 Outlook에 붙여 넣으면 예. 리플렉션에서 대안을 말할 때 더 많은 형식으로 클립 보드를로드 할 가능성이 높을수록 대상을 찾는 것이 좋습니다. –