রান টাইমে আমি কীভাবে কোনও পাঠ্যবক্সের পাঠ্যকে সেট করতে পারি?


101

আমি উইন্ডোজ ফর্মগুলি ব্যবহার করছি এবং আমার কাছে একটি পাঠ্যবাক্স রয়েছে যা আমি মাঝে মাঝে পাঠ্যটিকে একটি নির্দিষ্ট মান হিসাবে বোল্ড করতে চাই।

রান সময়ে আমি ফন্টের বৈশিষ্ট্যগুলি কীভাবে পরিবর্তন করব?

আমি দেখতে পাচ্ছি যে এখানে টেক্সটবক্স 1 নামে একটি সম্পত্তি রয়েছে F

উত্তর:


189

হরফের হ'ল সম্পত্তি কেবল পঠিত হয় তবে পাঠ্য বাক্সের আসল ফন্টের সম্পত্তি এটি নয়। আপনি পাঠ্যবক্সের ফন্টটি নিম্নরূপে সাহসী করতে পারবেন:

  textBox1.Font = new Font(textBox1.Font, FontStyle.Bold);

এবং তারপর আবার ফিরে:

  textBox1.Font = new Font(textBox1.Font, FontStyle.Regular);

4
ধন্যবাদ! বাহ, এটা আমি কল্পনা চেয়ে অনেক সহজ ছিল। সুতরাং আমি অনুমান করি যে একটি হরফ একটি স্ট্রিংয়ের মতো, একবার আপনি এটি তৈরি করার পরে, আপনি এটি পরিবর্তন করতে পারবেন না। আপনি কেবল এটির একটি নতুন উদাহরণ ঘোষণা করতে পারেন।
ডিস্কড্রাইভ

4
হ্যাঁ, এটি একবার তৈরি হয়ে গেলে তার অবস্থার পরিবর্তন করতে না পারার ক্ষেত্রে এটি স্ট্রিংয়ের মতো আচরণ করে বলে মনে হচ্ছে এটি অপরিবর্তনীয় । যাইহোক, এমএসডিএন নিবন্ধগুলি রয়েছে যা ফন্টকে অপরিবর্তনীয় বলে উল্লেখ করে, ফন্টের জন্য প্রকৃত রেফারেন্স নিজেই এটি উল্লেখ করে না।
টিম লয়েড

একটি লিঙ্কবুটনের জন্য এটি আমার জন্য কাজ করেছে: বাটন.ফন্ট.বোল্ড = সত্য
ডেবস

আংশিক পাঠ্যের জন্য কি একই জিনিস করা যেতে পারে? আমি বোঝাতে চাইছি আমি পাঠ্যের একটি অংশ হাইলাইট করতে চাই।
অনিল

3

আপনার অ্যাপ্লিকেশন উপর নির্ভর করে, আপনি সম্ভবত পাঠ্য পরিবর্তন বা ফোকাস / প্রশ্নে টেক্সটবক্স ফোকাস / ফোকাস উপর যে ফন্ট অ্যাসাইনমেন্ট ব্যবহার করতে চান।

এটি দেখতে কেমন দেখতে তার একটি দ্রুত নমুনা রয়েছে (খালি ফর্ম, কেবল একটি পাঠ্যবাক্স সহ। পাঠ্যটি 'সাহসী' পড়লে ফন্টটি গাsens় হয়ে যায়, কেস-সংবেদনশীল):

public partial class Form1 : Form
{
    public Form1()
    {
        InitializeComponent();
        RegisterEvents();
    }

    private void RegisterEvents()
    {
        _tboTest.TextChanged += new EventHandler(TboTest_TextChanged);
    }

    private void TboTest_TextChanged(object sender, EventArgs e)
    {
        // Change the text to bold on specified condition
        if (_tboTest.Text.Equals("Bold", StringComparison.OrdinalIgnoreCase))
        {
            _tboTest.Font = new Font(_tboTest.Font, FontStyle.Bold);
        }
        else
        {
            _tboTest.Font = new Font(_tboTest.Font, FontStyle.Regular);
        }
    }
}

1

আপনি নিয়মিত স্টাইল এবং বোল্ড স্টাইলের মধ্যে নীচের মত Extensionপরিবর্তন করতে পদ্ধতি ব্যবহার করতে পারেন :

static class Helper
    {
        public static void SwtichToBoldRegular(this TextBox c)
        {
            if (c.Font.Style!= FontStyle.Bold)
                c.Font = new Font(c.Font, FontStyle.Bold);
            else
                c.Font = new Font(c.Font, FontStyle.Regular);
        }
    }

এবং ব্যবহার:

textBox1.SwtichToBoldRegular();

1

বোল্ড, আন্ডারলাইন এবং ইটালিকগুলি টগল করার জন্য এখানে একটি উদাহরণ ।

   protected override bool ProcessCmdKey( ref Message msg, Keys keyData )
   {
      if ( ActiveControl is RichTextBox r )
      {
         if ( keyData == ( Keys.Control | Keys.B ) )
         {
            r.SelectionFont = new Font( r.SelectionFont, r.SelectionFont.Style ^ FontStyle.Bold ); // XOR will toggle
            return true;
         }
         if ( keyData == ( Keys.Control | Keys.U ) )
         {
            r.SelectionFont = new Font( r.SelectionFont, r.SelectionFont.Style ^ FontStyle.Underline ); // XOR will toggle
            return true;
         }
         if ( keyData == ( Keys.Control | Keys.I ) )
         {
            r.SelectionFont = new Font( r.SelectionFont, r.SelectionFont.Style ^ FontStyle.Italic ); // XOR will toggle
            return true;
         }
      }
      return base.ProcessCmdKey( ref msg, keyData );
   }

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.