ডাব্লুপিএফ: কমান্ড দ্বারা বোতাম অক্ষম করা হলে কীভাবে টুলটিপ প্রদর্শন করবেন?


162

আমি বোতামের অবস্থা নির্বিশেষে একটি সরঞ্জামদণ্ড দেখানোর চেষ্টা করছি, তবে এটি কৌশলটি মনে হচ্ছে না:

<Button Command="{Binding Path=CommandExecuteAction}" 
        ToolTip="{Binding Path=Description}" ToolTipService.ShowOnDisabled="true"
        Style="{StaticResource toolbarButton}">
   <Image Source="{Binding Path=Icon}"></Image>
</Button>

কমান্ডের কারণে বোতামটি অক্ষম হয়ে গেলে আমি কীভাবে সরঞ্জামটিপটি প্রদর্শন করতে পারি?

বিঃদ্রঃ:

ToolTipService.ShowOnDisabled = "সত্য" একটি কবজির মতো কাজ করে। এটি আমার উদাহরণে কাজ না করার কারণটি হ'ল বাটনটির সাথে সম্পর্কিত শৈলীটি কন্ট্রোলপ্লেটটিকে নতুন করে সংজ্ঞায়িত করে এবং বোতামটি অক্ষম করা হলে বোতামটির হিট-টেস্টিং বন্ধ করে দেয় (ইসহিটটেষ্টভিজিবল = মিথ্যা)। কন্ট্রোলপ্লেটে হিট-পরীক্ষার পুনরায় সক্রিয়করণ বোতামটি অক্ষম করা হলে সরঞ্জামটিপটি উপস্থিত হয়।



আমি টুলটিপসোসভিয়ারটি ব্যবহার করছি h শোঅনডাবলড, তবে এটি কাজ করছে না।
মারিয়াস

1
শুধু এই প্রশ্নটি মুছুন। আমি একটি ছোট পরীক্ষা প্রকল্প করেছি এবং সরঞ্জামটিপসপরিসর.শোঅনডেবলড কার্যকর কাজ করে।
মারিউস

15
আমি খুশি এই প্রশ্নটি মুছে ফেলা হয়নি। এটি আমার এবং আমার কাছে থাকা একটি প্রশ্নের / সমস্যার উত্তর দ্রুত এবং নির্ভুলভাবে দিয়েছিল, এটিই আমি প্রথম স্থানে এসওতে আসার সঠিক কারণ। অলস (টিএম) মারিয়াস হওয়ার জন্য ধন্যবাদ :-)
জেরে জোনস

ক্ষমা করবেন, আমি কি কেবলমাত্র অক্ষম হওয়ার পরে এটিকে দেখানোর কোনও উপায় আছে?
অ্যাডাপি

উত্তর:


305

ToolTipService.ShowOnDisabled = "true"


10
এমএসডিএন রেফারেন্স: এমএসডিএন.মাইক্রোসফটকম / en
ডেভিড

3
এটি সেই বস্তুর জন্য xaml ঘোষণার মধ্যে যায় যার উপর দিয়ে টুলটিপটি প্রদর্শিত হবে, যেমন:<Button ToolTipService.ShowOnDisabled="True">...
পরিকল্পিতভাবে মনিকা

26

আপনার স্টার্টআপ কোডে যুক্ত করার জন্য এটি একটি ভাল পদ্ধতি

ToolTipService.ShowOnDisabledProperty.OverrideMetadata(
    typeof(Control),
    new FrameworkPropertyMetadata(true));

আপনি কি ব্যাখ্যা করতে পারেন এটি কি করে? এটি স্টার্টআপে একটি ভাল পদ্ধতি বলার ব্যাখ্যা দেয় না।
স্টিলথ রাব্বি

এটি নিশ্চিত যে কোন শ্রেণীর কন্ট্রোল থেকে উত্তরাধিকার সূত্রে প্রাপ্ত জন্য, টুলটিপ্সে দেখানো হয় যে এমনকি যদি কন্ট্রোল উদাহরণস্বরূপ অক্ষম করা হয়েছে
Sacha নাপিতের

3
এটি বিদ্রূপজনক যে ব্যবহারকারীরা যখন নিয়ন্ত্রণ অক্ষম থাকে তখন সরঞ্জামদণ্ডের সবচেয়ে বেশি প্রয়োজন হয়, কারণ তারা জানতে চান কেন নিয়ন্ত্রণটি অক্ষম করা হয়। এটি ডাব্লুপিএফ-এর একটি ডিফল্টর একটি ভাল উদাহরণ যা সময়ের বিশাল সংখ্যাগরিষ্ঠই ভুল। সুতরাং এটি এটি পরিবর্তন মূল্য।
কনটাঙ্গো

2

সমস্ত অক্ষম বোতাম এবং চেকবাক্সগুলির জন্য টুলটিপটি দৃশ্যমান করুন:

<Window.Resources>
    <Style TargetType="{x:Type Button}" BasedOn="{StaticResource {x:Type Button}}>
        <Setter Property="ToolTipService.ShowOnDisabled" Value="true"/>
    </Style>
    <Style TargetType="{x:Type CheckBox}" BasedOn="{StaticResource {x:Type CheckBox}}>
        <Setter Property="ToolTipService.ShowOnDisabled" Value="true"/>
    </Style>
</Window.Resources>

BasedOn=...প্রতিরোধ আপনার যদি অন্য কোন শৈলী সামনে চেকবক্স বা বাটন প্রয়োগ করা হয়েছে আলগা পারে। আপনি যদি বোতাম বা চেকবক্সের জন্য অন্য কোনও শৈলী ব্যবহার না করেন তবে আপনি BasedOn=..অংশগুলি সরাতে পারেন

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