سؤال

وأنا وصل سلسلة في بعض الأحيان لفترة كافية لأنها لا تناسب في عنصر تحكم التسمية. كيف يمكنني جعله التمرير التلقائي للrightside ذلك أرى دائما نهاية السلسلة؟

هل كانت مفيدة؟

المحلول

وبينما أنا متأكد من أن هناك طرق للقيام، أود أن أسأل، لماذا؟ وأعتقد أنه سيكون تبدو و / أو العمل بشكل سيء للغاية، وربما تخلط بين المستخدم.

لماذا لا يكون النص الحصول على قلص مع القطع الناقص (...) في نهاية وإظهار تلميح على التسمية؟

using System.Windows.Forms;

var label = new Label();
label.AutoSize = false;
label.AutoEllipsis = true;
label.Text = "This text will be too long to display all together.";

var labelToolTip = new ToolTip();
labelToolTip.SetToolTip(label, label.Text);

والآن تلميح الأدوات سوف تظهر على النص الكامل عند مرور المستخدم أكثر من ذلك. لأن النص في التسمية سيتم اقتطاع وتنتهي في القطع الناقص، يجب على المستخدم معرفة لتحوم فوق لمزيد من المعلومات (عادة الطريقة القياسية).

نصائح أخرى

TextAlign يسمح لك لتحديد المحاذاة. إذا النقر بزر الماوس الأيمن تبرير ذلك مع هذا، فإن الجانب الأيمن من النص أن يكون دائما واضحة. ومع ذلك، إذا كنت تريد أن يكون اليسار أو تبرير مركز والتي لا تزال سلوك تصفون، وأظن أنك سوف تحتاج إلى تنفيذ بعض القياس باستخدام <لأ href = "http://msdn.microsoft.com/en-us/library /system.drawing.graphics.measurestring.aspx "يختلط =" نوفولو noreferrer "> Graphics.MeasureString لتحديد ما إذا كان النص يناسب وتغيير محاذاة بشكل حيوي.

وAFAIK هناك أي وسيلة لتمرير تسمية. ومن شأن الإختراق يكون لاستخدام مربع نص (للقراءة فقط، إيقاف الحدود) ثم استخدام SendKeys.Send () لتحريك المؤشر إلى نهاية النص. شيء من هذا القبيل:

        textBox1.Focus();
        SendKeys.SendWait("{END}");

للحصول على النص ليست كما تظهر المختارة اضطررت الى تغيير موقف انها في ترتيب الجدولة (بحيث لم يكن 1) ولكن هذا قد لا يكون هناك مشكلة في قضيتك.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top