2012-10-08 41 views
5

का उपयोग कर मैं इस कोड है:रिच पाठ बॉक्स में एक साहसिक पाठ जोड़ने के लिए कैसे प्रोग्राम के VB.NET

print_text.Text = "Patient number: " + ds.Tables("patients").Rows(0).Item(0) 
print_text.AppendText(Environment.NewLine) 
print_text.Text = print_text.Text + "Last name: " + ds.Tables("patients").Rows(0).Item(1) 
print_text.AppendText(Environment.NewLine) 

अब उपरोक्त डेटा मैं प्रोग्राम के द्वारा जोड़ा जा रहा है और यह ठीक काम करता है। हालांकि उपर्युक्त कोड में मैं बोल्ड फ़ॉन्ट में Patient number और Last name जोड़ना चाहता हूं।

उत्तर

9

जब एक RichTextBox का उपयोग कर, क्यों नहीं बस आरटीएफ का उपयोग करें?


उदाहरण:

Sub Main 
    Dim f = new Form() 
    Dim print_text = new RichTextBox() With {.Dock = DockStyle.Fill} 
    f.Controls.Add(print_text) 

    Dim sb = new System.Text.StringBuilder() 
    sb.Append("{\rtf1\ansi") 
    sb.Append("This number is bold: \b 123\b0 ! Yes, it is...") 
    sb.Append("}") 
    print_text.Rtf = sb.ToString() 

    f.ShowDialog() 
End Sub 

परिणाम:

RichTextBox with bold text

MSDN


इस तरह, आप भी आसानी से आरटीएफ सामान विस्तार तरीकों में लपेट कर सकते हैं:

Module RtfExtensions 

    <Extension()> 
    Public Function ToRtf(s As String) As String 
     Return "{\rtf1\ansi" + s + "}" 
    End Function 

    <Extension()> 
    Public Function ToBold(s As String) As String 
     Return String.Format("\b {0}\b0 ", s) 
    End Function 

End Module 

और तरह

Dim text = "This number is bold: " + "123".ToBold() + "! Yes, it is..." 
print_text.Rtf = text.ToRtf() 
+0

अच्छा और साफ समाधान, मुझे यह पसंद है। – Raffaeu

3

RichTextBox.SelectionFont संपत्ति का उपयोग करें।
ऐसा करने के तरीके पर इन MSDN लिंक की जाँच करें: Link 1 और Link 2

आशा है कि यह मदद करता है।
संपादित करें:

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load 
    Dim len As Integer 
    RichTextBox1.Text = "Patient number: " + " 12345" 
    RichTextBox1.SelectionStart = 0 
    RichTextBox1.SelectionLength = "Patient number".Length 
    RichTextBox1.SelectionFont = New Font("Arial", 12, FontStyle.Bold) 
    RichTextBox1.SelectionLength = 0 
    RichTextBox1.AppendText(Environment.NewLine) 
    len = RichTextBox1.Text.Length 
    RichTextBox1.AppendText("Last name: " + " ABCD") 
    RichTextBox1.SelectionStart = len 
    RichTextBox1.SelectionLength = "Last name".Length 
    RichTextBox1.SelectionFont = New Font("Arial", 12, FontStyle.Bold) 
    RichTextBox1.SelectionLength = 0 
End Sub 
+0

यह एक चयनित पाठ के लिए है में उपयोग करें। मैं क्या चाहता हूं कि डेटा जो मैं समृद्ध टेक्स्टबॉक्स में गतिशील रूप से जोड़ रहा हूं वह बोल्ड फ़ॉन्ट –

+0

में होना चाहिए, यह गतिशील या स्थैतिक नहीं है। आप इस संपत्ति का किसी भी स्थान पर उपयोग कर सकते हैं लेकिन इसे उचित रूप से उपयोग करने की आवश्यकता होगी। मैंने एक सरल उदाहरण शामिल करने के लिए अपना उत्तर अपडेट किया है। कृपया एक नज़र डालें। धन्यवाद। – Luftwaffe

+0

अच्छा है, मुझे कोशिश करें ... मदद के लिए धन्यवाद :) –