কুম্বোবক্সের মতো ভিজ্যুয়াল শৈলীগুলি সক্ষম করার জন্য কীভাবে নিয়ন্ত্রণ করা যায়?

আমার একটি নিয়ন্ত্রণ আছে যা একটি কম্বোবক্স এ মডেল করা হয়েছে। আমি নিয়ন্ত্রণ প্রদান করতে চাই যাতে নিয়ন্ত্রণ সীমানা একটি মান উইন্ডোজ কম্বোবক্স এর মতো দেখতে পারে। বিশেষ করে, আমি এমএসডিএন ডকুমেন্টেশন অনুসরণ করেছি এবং কন্ট্রোলটি নিষ্ক্রিয় করার সময় রেন্ডারিং ব্যতীত নিয়ন্ত্রণের সমস্ত রেন্ডারিং সঠিক।

শুধু স্পষ্ট হতে, এটি ভিজ্যুয়াল শৈলীগুলি সক্ষম সহ একটি সিস্টেমের জন্য। এছাড়াও, নিয়ন্ত্রণের সমস্ত অংশ একটি অক্ষম নিয়ন্ত্রণের চারপাশে সীমানা ব্যতীত সঠিকভাবে রেন্ডার করে, যা অক্ষম কম্বোবক্স সীমানা রঙের সাথে মেলে না।

আমি ভিজ্যুয়াল স্টাইল রেন্ডারার ক্লাস ব্যবহার করছি কম্বোবক্স এর পাঠ্যবক্স অংশটি এবং একটি মান অক্ষম কম্বোবক্স একটু আলাদাভাবে আঁকুন (একটি হালকা ধূসর সীমানা আছে, অন্যটি একটি হালকা নীল সীমানা)।

আমি কিভাবে একটি অক্ষম অবস্থায় নিয়ন্ত্রণ সঠিক রেন্ডারিং পেতে পারি?

0
ro fr hi

2 উত্তর

কন্ট্রোলপেন্ট পদ্ধতিগুলি যেগুলির জন্য দরকারী এই? আমি সাধারণতঃ কাস্টম-উপস্থাপিত নিয়ন্ত্রণগুলির জন্য এটি ব্যবহার করি।

0
যোগ

আমি 100% নিশ্চিত নই যদি আপনি এটি খুঁজছেন তবে আপনি ভিজ্যুয়াল স্টাইল রিেন্ডারার সিস্টেমটি পরীক্ষা করে দেখতে পারেন। উইণ্ডো। ফরম। ভিজ্যুয়াল স্টাইল-নেমস্পেস।

  1. VisualStyleRenderer class (MSDN)
  2. How to: Render a Visual Style Element (MSDN)
  3. VisualStyleElement.ComboBox.DropDownButton.Disabled (MSDN)

যেহেতু VisualStyleRenderer যদি ভিসুয়াল স্টাইল সক্ষম না থাকে (সে / সে হয়তো 'ক্লাসিক মোড' বা উইন্ডোজ এক্সপি'র আগে একটি অপারেটিভ সিস্টেম চালাতে পারে) কাজ করে না, তবে আপনি কন্ট্রোল প্যাক্ট ক্লাসে সবসময় ফাঁকফোকা থাকা উচিত।

// Create the renderer.
if (VisualStyleInformation.IsSupportedByOS 
    && VisualStyleInformation.IsEnabledByUser) 
{
    renderer = new VisualStyleRenderer(
        VisualStyleElement.ComboBox.DropDownButton.Disabled);
}

এবং আঁকা যখন এই মত করতে:

if(renderer != null)
{
    // Use visual style renderer.
}
else
{
    // Use ControlPaint renderer.
}

আশা করি এটা সাহায্য করবে!

0
যোগ