T
Tolias
Как сделать так, чтобы при наведении указателя на NotifyIcon всплывающая подсказка отображала больше 127 символов? Пока мне только удалось побороть исключение, которое вопило, что длина должна быть не более 64 символов
<!--shcode--><pre><code class='c#'>using System;
using System.Windows.Forms;
using System.Reflection;
public class Fixes {
public static void SetNotifyIconText(NotifyIcon ni, string text) {
if (text.Length >= 1000) throw new ArgumentOutOfRangeException("Text limited to 127 characters");
Type t = typeof(NotifyIcon);
BindingFlags hidden = BindingFlags.NonPublic | BindingFlags.Instance;
t.GetField("text", hidden).SetValue(ni, text);
if ((bool)t.GetField("added", hidden).GetValue(ni))
t.GetMethod("UpdateIcon", hidden).Invoke(ni, new object[] { true });
}
}[/CODE]
Теперь хоть оно и ставит до 1000, но по прежнему отображает только первые 127 символов... А мне очень надо сделать больше. Создавать еще одну форму вместо подсказки как-то не то.. Как можно выйти из положения?
Ссылка скрыта от гостей
:<!--shcode--><pre><code class='c#'>using System;
using System.Windows.Forms;
using System.Reflection;
public class Fixes {
public static void SetNotifyIconText(NotifyIcon ni, string text) {
if (text.Length >= 1000) throw new ArgumentOutOfRangeException("Text limited to 127 characters");
Type t = typeof(NotifyIcon);
BindingFlags hidden = BindingFlags.NonPublic | BindingFlags.Instance;
t.GetField("text", hidden).SetValue(ni, text);
if ((bool)t.GetField("added", hidden).GetValue(ni))
t.GetMethod("UpdateIcon", hidden).Invoke(ni, new object[] { true });
}
}[/CODE]
Теперь хоть оно и ставит до 1000, но по прежнему отображает только первые 127 символов... А мне очень надо сделать больше. Создавать еще одну форму вместо подсказки как-то не то.. Как можно выйти из положения?