문제

나는 ListView 그 안에.ListView는 속성을 통해 공개적으로 액세스할 수 있습니다.UserControl을 폼에 넣고 디자인하려고 하면 ListView 비록 그 재산, ListView 다시 컴파일하고 기본 상태로 돌아갈 때까지 그대로 유지됩니다.

디자인 변경 사항을 계속 유지하려면 어떻게 해야 합니까? ListView?

도움이 되었습니까?

해결책

다음과 같이 DesignerSerializationVisibility 특성을 사용하여 ListView 속성을 장식해야 합니다.

[DesignerSerializationVisibility(DesignerSerializationVisibility.Content)]
public ListView MyListView { get { return this.listView1; } }

이는 디자이너의 코드 생성기에 이에 대한 코드를 출력하도록 지시합니다.

다른 팁

프레드릭 기본적으로 디자이너가 속성을 페이지에 유지하여 런타임에 인스턴스화할 수 있도록 해야 하는 경우에는 이 방법이 맞습니다.이를 수행하는 유일한 방법은 해당 값을 ASPX 페이지에 기록한 다음 런타임에서 선택하는 것입니다.

그렇지 않으면 컨트롤이 매번 기본 상태로 되돌아갑니다.

페이지(및 해당 내용)와 코드는 ASP.NET에서 완전히 분리되어 있으며 런타임에 연결되어 있다는 점을 항상 염두에 두십시오.즉, WinForms 앱(양식이 개체의 인스턴스임)에서와 같이 멋진 코드 숨김 디자이너 지원을 받을 수 없다는 의미입니다.

확실히 말씀드리자면, 당신도 이런 일을 해본 적이 있지 않습니까?

public ListView MyListView { get { return this.listView1; } }

그렇다면 (디자인 타임에) UserControl의 MyListView 속성에 액세스하고 있습니까?

적절한 디자인 타임 지원을 원한다면 ListView 자체(원래 UserControl에서 다시)의 "Modifier" 속성을 Public으로 변경하는 것이 더 나을 것입니다. 이렇게 하면 UserControl 인스턴스에서 ListView를 직접 수정할 수 있습니다.어쨌든 나는 그 일을 성공했습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top