[SIZE=2][COLOR=#0000ff][FONT=Courier New]public [/FONT][/COLOR][/SIZE][FONT=Courier New][SIZE=2][COLOR=#0000ff]class [/COLOR][/SIZE][SIZE=2][COLOR=#008080]ExtendedSplitContainer[/COLOR][/SIZE][SIZE=2] : [/SIZE][SIZE=2][COLOR=#008080]SplitContainer
[/COLOR][/SIZE][/FONT][SIZE=2][FONT=Courier New]{[/FONT]
[/SIZE][FONT=Courier New][SIZE=2][COLOR=#0000ff]private [/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]readonly [/COLOR][/SIZE][SIZE=2][COLOR=#008080]Graphics[/COLOR][/SIZE][/FONT][SIZE=2][FONT=Courier New] m_canvas;[/FONT][/SIZE]
[SIZE=2]
[/SIZE][FONT=Courier New][SIZE=2][COLOR=#0000ff] public[/COLOR][/SIZE][SIZE=2] ExtendedSplitContainer([/SIZE][SIZE=2][COLOR=#008080]Graphics[/COLOR][/SIZE][/FONT][SIZE=2][FONT=Courier New] canvas)[/FONT]
[FONT=Courier New] : [/FONT][/SIZE][FONT=Courier New][SIZE=2][COLOR=#0000ff]base[/COLOR][/SIZE][/FONT][SIZE=2][FONT=Courier New]()[/FONT]
[FONT=Courier New] {[/FONT]
[FONT=Courier New] m_canvas = _canvas;[/FONT]
[FONT=Courier New] }[/FONT]
[/SIZE][FONT=Courier New][SIZE=2][COLOR=#0000ff] protected [/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]override [/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]void [/COLOR][/SIZE][SIZE=2]OnPaint([/SIZE][SIZE=2][COLOR=#008080]PaintEventArgs[/COLOR][/SIZE][/FONT][SIZE=2][FONT=Courier New] e)[/FONT]
[FONT=Courier New] {[/FONT]
[FONT=Courier New] e.Graphics = m_canvas;[/FONT]
[/SIZE][FONT=Courier New][SIZE=2][COLOR=#0000ff] base[/COLOR][/SIZE][/FONT][SIZE=2][FONT=Courier New].OnPaint(e);[/FONT]
[FONT=Courier New] }[/FONT]
[/SIZE][FONT=Courier New][SIZE=2][COLOR=#0000ff] public [/COLOR][/SIZE][SIZE=2][COLOR=#008080]Graphics[/COLOR][/SIZE][/FONT][SIZE=2][FONT=Courier New] Canvas[/FONT]
[FONT=Courier New] {[/FONT]
[/SIZE][FONT=Courier New][SIZE=2][COLOR=#0000ff] get[/COLOR][/SIZE][SIZE=2] { [/SIZE][SIZE=2][COLOR=#0000ff]return[/COLOR][/SIZE][/FONT][SIZE=2][FONT=Courier New] m_canvas; }[/FONT]
[/SIZE][FONT=Courier New][SIZE=2][COLOR=#0000ff] set[/COLOR][/SIZE][SIZE=2] { OnPaint([/SIZE][SIZE=2][COLOR=#0000ff]new [/COLOR][/SIZE][SIZE=2][COLOR=#008080]PaintEventArgs[/COLOR][/SIZE][SIZE=2](m_canvas = [/SIZE][SIZE=2][COLOR=#0000ff]value[/COLOR][/SIZE][SIZE=2], [/SIZE][SIZE=2][COLOR=#0000ff]this[/COLOR][/SIZE][/FONT][SIZE=2][FONT=Courier New].ClientRectangle)); }[/FONT]
[FONT=Courier New] }[/FONT]
[FONT=Courier New]}[/FONT]
[/SIZE]
Как рисовать элементы в splitContainer'e? (Язык C#)
Заранее благодарен.
Заранее благодарен.[/quote]
Создаёшь GDI-объект для этого контрола вызовом CreateGraphics и рисуешь и текст и линии и всё остальное. Можно создать производный от SplitContainer класс и ввести дополнительный функионал для рисования в этом компоненте. Например, так:
Код:
Теперь через объект Canvas можно рисовать на контейнере.
3A3-968M, спасибо. Ответ, оказывается, под носом лежал. Пойду читать в MSDN'e про GDI. =)