Хорошо, я начинаю зацикливаться на своем дизайне и правильно понимаю стиль.
Моя тема использует графический интерфейс в стиле kryptonForm, но kyryptonForms не имеют предварительно разработанного ListView, поэтому мне приходится создавать его самостоятельно
Мое приложение - это система обмена сообщениями, основанная на XMPP / Jabber, так что вы можете догадаться, как бы я хотел, чтобы мой список контактов был разработан.
Я выполнил большую часть позиционирования, но я борюсь за стилизацию каждого ряда контактов.
Я собираюсь создать прозрачный оверлейный симулятор для списка контактов MSN Live messenger
Вот мой код OnDraw Event atm, и я изо всех сил пытаюсь найти лучший способ сделать градиент
private void ContactItem_OnPaintDraw(object sender, DrawListViewItemEventArgs e)
{
Rectangle ImageRect = e.Bounds;
ImageRect.Inflate(-2, -2);
ImageRect.Width = 32;
Rectangle TextRect = e.Bounds;
TextRect.X = ImageRect.Right + 2;
TextRect.Width = e.Bounds.Width - TextRect.X;
Rectangle IconRect = TextRect;
IconRect.Inflate(-1, 0);
IconRect.Y = ImageRect.Bottom - 16;
IconRect.Width = 16;
IconRect.Height = 16;
if ((e.State & ListViewItemStates.Selected) != 0)
{
// Draw the background and focus rectangle for a selected item.
e.Graphics.FillRectangle(ContactListBackgroundBrush, e.Bounds);
e.DrawFocusRectangle();
}
else
{
// Draw the background for an unselected item.
e.Graphics.FillRectangle(Brushes.White, e.Bounds);
}
if (ListViewContacts.View != View.Details)
{
e.Graphics.DrawImage((Image)Resources.UserIconDefault, ImageRect);
TextRenderer.DrawText(e.Graphics, e.Item.Text, e.Item.Font, TextRect, e.Item.ForeColor, TextFormatFlags.GlyphOverhangPadding);
}
}
И ContactListBackgroundBrush
var похож на
private Brush ContactListBackgroundBrush = new SolidBrush(Color.FromArgb(33, 162, 191));
это то, что мне нужно преобразовать в элемент стиля
альтернативный текст http://screensnapr.com/u/yeq8o0.png
Im Ищу этот выделенный стиль без импорта каких-либо конкретных файлов Windows 7 DLL, так как приложение также используется для Windows XP.
Надеюсь, вы, ребята, можете мне помочь:)