जवाबों:
ComboStyle संपत्ति का उपयोग करें:
comboBox.DropDownStyle = ComboBoxStyle.DropDownList;
combo.Properties.TextEditStyle = DisableTextEditor
यह एक और तरीका है जिसका उपयोग मैं करता हूं क्योंकि यह 3D और कभी-कभी इसके सीधे सादे बदसूरत दिखने के DropDownSyle
लिए बदल जाता DropDownList
है।
आप KeyPress
इस तरह से ComboBox की घटना को संभालकर उपयोगकर्ता इनपुट को रोक सकते हैं ।
private void ComboBox1_KeyPress(object sender, KeyPressEventArgs e)
{
e.Handled = true;
}
Paste
भी है। मुझे नहीं पता कि अभी कैसे।
Paste
आपको नकली खाली संदर्भ मेनू बनाना होगा और इसे कॉम्बो बॉक्स में असाइन करना होगा।
Yow DropDownStyle को DropDownList के गुणों में बदल सकता है। यह टेक्स्टबॉक्स को फ़िल्टर के लिए नहीं दिखाएगा।
(स्क्रीनशॉट CHA0S द्वारा प्रदान किया गया ।)
मैंने ComboBox1_KeyPress की कोशिश की, लेकिन यह चरित्र को हटाने की अनुमति देता है और आप कॉपी पेस्ट कमांड का भी उपयोग कर सकते हैं। मेरा DropDownStyle DropDownList पर सेट है लेकिन फिर भी कोई फायदा नहीं हुआ। इसलिए मैंने कॉम्बोक्स पाठ संपादन से बचने के लिए कदम नीचे किया।
नीचे दिए गए कोड हैंडल डिलीट और बैकस्पेस कुंजी। और नियंत्रण कुंजी के साथ संयोजन को भी निष्क्रिय करता है (जैसे ctr + C या ctr + X)
Private Sub CmbxInType_KeyDown(sender As Object, e As KeyEventArgs) Handles CmbxInType.KeyDown
If e.KeyCode = Keys.Delete Or e.KeyCode = Keys.Back Then
e.SuppressKeyPress = True
End If
If Not (e.Control AndAlso e.KeyCode = Keys.C) Then
e.SuppressKeyPress = True
End If
End Sub
माउस क्लिक के माध्यम से कट / पेस्ट से बचने के लिए कॉम्बोक्स नियंत्रण पर राइट क्लिक को अक्षम करने के लिए लाइन के नीचे लोड उपयोग में।
CmbxInType.ContextMenu = new ContextMenu()