मैं कैरेट 4 पदों को उस स्थान पर ले जाना चाहता हूं जहां मेरी देखभाल वर्तमान में है। मैं PreviewKeyDown
के लिए पंजीकृत कर रहा हूँ, और बुला InsertTextInRun()
जब टैब कुंजी तो तरह कब्जा कर लिया है,:मैं WPF RichTextBox में कैरेट को कुछ निश्चित पदों को कैसे स्थानांतरित करूं?
private void rtb_PreviewKeyDown(object sender, KeyEventArgs e)
{
if (e.Key == Key.Tab)
{
rtb.CaretPosition.InsertTextInRun(" ");
e.Handled = true;
}
}
समस्या यह है कि कैरट InsertTextInRun()
करने के लिए कॉल के बाद जगह में रहता है। यह नए पाठ के अंत तक चलता है, जो मैं चाहता हूं कि व्यवहार है। यह मैं कैसे करूंगा?
एक अलग रूप में के रूप में - हाँ, मैं RichTextBox
पर AcceptsTab
संपत्ति के बारे में पता है। मैं अनदेखा करना चुन रहा हूं और अपनी खुद की टैब कार्यक्षमता रोल कर रहा हूं क्योंकि AcceptsTab
के साथ टैबबिंग के बाद की लाइनों पर इंडेंटिंग टेक्स्ट का बुरा दुष्प्रभाव है, जो नहीं है जो मैं चाहता हूं।
वाह, मुझे यह याद करना होगा! मैं जल्द ही कोशिश करूँगा, धन्यवाद! :) –
क्षमा करें, कोई पासा नहीं। कैरेट सम्मिलित पाठ के अंत में नहीं चला था। –
मेरे लिए काम नहीं किया था, केवल समाधान जो काम करता है स्वीकार्य समाधान है। – ToastyMallows