2009-06-02 9 views
22

मैं एक WPF टेक्स्टबॉक्स कैसे कट, कॉपी और पेस्ट प्रतिबंधित कर सकता हूं?WPF टेक्स्टबॉक्स को कट, कॉपी और पेस्ट के रूप में प्रतिबंधित करें

+0

मैं WPF के बारे में ज्यादा नहीं जानता। आप इसके बजाए एक लेबल का उपयोग कर सकते हैं (जो आपको कट/कॉपी/पेस्ट करने की अनुमति नहीं देगा। – shahkalpesh

+3

लेकिन मैं चाहता हूं कि उपयोगकर्ता कीबोर्ड के माध्यम से डेटा इनपुट करे। – Sauron

उत्तर

40

कट, कॉपी और पेस्ट आम किसी भी आवेदन के लिए इस्तेमाल किया आदेश,

<TextBox CommandManager.PreviewExecuted="textBox_PreviewExecuted" 
     ContextMenu="{x:Null}" /> 
ऊपर पाठ बॉक्स कोड में

हम CommandManager कक्षा

की और कोड में PrviewExecuted घटना में इन आदेशों सीमित कर सकते हैं के पीछे कोड के नीचे जोड़ने कर रहे हैं और अपने काम के लिए किया जाता है

private void textBox_PreviewExecuted(object sender, ExecutedRoutedEventArgs e) 
{ 
    if (e.Command == ApplicationCommands.Copy || 
     e.Command == ApplicationCommands.Cut || 
     e.Command == ApplicationCommands.Paste) 
    { 
      e.Handled = true; 
    } 
} 
+2

मुझे लगता है कि मुझे संदर्भमेनू को शून्य पर सेट करने की भी आवश्यकता है। – Sauron

+0

यह सही है, आप संदर्भ मेनू –

+1

अक्षम करते हैं, मैं सुझाव देता हूं कि किसी को भी निम्नलिखित फ़ॉर्म में इसका उपयोग करने के लिए सुझाव दें: 'e.Command == ApplicationCommands.Cut', स्थानीयकरण के कारण बदल सकती स्ट्रिंग पर कास्टिंग और भरोसा करने के बजाय। मैंने प्रशांत को एक संपादन सुझाव प्रस्तुत किया – VitalyB

13

commandname विधि commandname के रूप में जापानी ओएस के साथ एक सिस्टम पर काम नहीं करेगा == "चिपकाएँ" तुलना वाई असफल हो जाएगा मैंने निम्नलिखित दृष्टिकोण की कोशिश की और यह मेरे लिए काम किया। इसके अलावा मुझे मैन्युअल रूप से संदर्भ मेनू को अक्षम करने की आवश्यकता नहीं है।

XAML फाइल में:

<PasswordBox.CommandBindings> 
    <CommandBinding Command="ApplicationCommands.Paste" 
    CanExecute="CommandBinding_CanExecutePaste"></CommandBinding> 
</PasswordBox.CommandBindings> 

पीछे कोड में:

private void CommandBinding_CanExecutePaste(object sender, CanExecuteRoutedEventArgs e) 
{ 
    e.CanExecute = false; 
    e.Handled = true; 
} 
संबंधित मुद्दे