몇 초마다 FlowLayoutPanel에 여러 LinkLabel을 추가하고 추가하고 있습니다. 잘 작동하지만 깜박임이 눈에.니다. 그것을 줄일 수있는 방법이 있습니까? Form.DoubleBuffering을 설정하려고했지만 도움이되지 않았습니다..NET의 Flicker 감소 FlowLayoutPanel
답변
은 FlowLayoutPanel에서 파생 된 사용자 지정 컨트롤을 생성하고 스타일을 설정하여 관리 :
공공 클래스 CustomFlowLayoutPanel 상속 FlowLayoutPanel
을Public Sub New() MyBase.New() SetStyle(ControlStyles.UserPaint, True) SetStyle(ControlStyles.AllPaintingInWmPaint, True) SetStyle(ControlStyles.DoubleBuffer, True) End Sub
이상적은 아니지만 제대로 된 작업을 원한다면 직접하십시오. –
@MattSkeldon 당신의 이상적인 해결책은 무엇입니까? – Smith
이상적인 솔루션은 표준 컨트롤에 아무런 이점이 없기 때문에 표준 컨트롤을 무의미하게 렌더링하는 상속 된 컨트롤을 만들 필요없이 표준 컨트롤이 작동한다는 것입니다. 이상적이고 현실적인 개념은 완전히 다릅니다. –
컨트롤을 추가하기 전에 패널에 SuspendLayout()을 호출 한 다음 Panel에서 ResumeLayout()을 호출 해보십시오. 그 깜박임을 약간 잃을 수도 있습니다.
저에게 도움이됩니다! –
최종 클래스 왜이다 추가/제거 하시겠습니까? 가시성을 충분하게 설정하지 않겠습니까? 당신이 그 일에 맞는 컨트롤을 사용하지 않는 것 같습니다. – leppie
나는 눈에 보이는 속성을 설정해 보았습니다. 너무 깜박 거립니다. – Thunder