গুরুত্বপূর্ণ
উইন্ডোজ ফর্ম বা ডাব্লুপিএফ ব্যবহারের পার্থক্য আছে !!
তাদের বিভিন্ন ডিজাইনার রয়েছে এবং তাদের বিভিন্ন চেক প্রয়োজন । আপনি যখন ফর্ম এবং ডাব্লুপিএফ নিয়ন্ত্রণগুলি মিশ্রিত করেন তবে অতিরিক্ত এটি মুশকিল। (যেমন ডাব্লুপিএফ একটি ফর্ম উইন্ডোর ভিতরে নিয়ন্ত্রণ করে)
যদি আপনার কেবল উইন্ডোজ ফর্ম থাকে তবে এটি ব্যবহার করুন:
Boolean isInWpfDesignerMode = (LicenseManager.UsageMode == LicenseUsageMode.Designtime);
আপনার যদি কেবল ডাব্লুপিএফ থাকে তবে এই চেকটি ব্যবহার করুন:
Boolean isInFormsDesignerMode = (System.Diagnostics.Process.GetCurrentProcess().ProcessName == "devenv");
আপনার যদি ফর্ম এবং ডাব্লুপিএফের মিশ্র ব্যবহার থাকে তবে এই জাতীয় চেক ব্যবহার করুন:
Boolean isInWpfDesignerMode = (LicenseManager.UsageMode == LicenseUsageMode.Designtime);
Boolean isInFormsDesignerMode = (System.Diagnostics.Process.GetCurrentProcess().ProcessName == "devenv");
if (isInWpfDesignerMode || isInFormsDesignerMode)
{
}
else
{
}
বর্তমান মোডটি দেখতে আপনি ডিবাগিংয়ের জন্য একটি বার্তাবক্স প্রদর্শন করতে পারেন:
MessageBox.Show(String.Format("DESIGNER CHECK: WPF = {0} Forms = {1}", isInWpfDesignerMode, isInFormsDesignerMode));
মন্তব্য:
আপনাকে নেমস্পেসস সিস্টেম যুক্ত করতে হবে omp কম্পোনেন্টমোডেল এবং সিস্টেম D ডায়াগনস্টিক্স ।
ISite.DesignMode
।