속성 속성 동적으로 수정
어셈블리가 로드된 후 속성 매개변수를 변경할 수 있습니까? 다음 클래스를 고려하세요.
public class UserInfo { [Category("change me!")] public int Age { get; set; } [Category("change me!")] public string Name { get; set; } }
타사 공급업체 클래스임에도 불구하고(코드 수정 금지) 인스턴스를 속성 그리드에 바인딩할 때 "change me" 범주 이름을 수정하려고 합니다.
해결책:
속성 인스턴스 값은 런타임 시 동적으로 수정될 수 있습니다. 속성 인스턴스 얻기:
ASCII[] attrs1 = (ASCII[])typeof(MyClass).GetCustomAttributes(typeof(ASCII), false);
공용 변수 수정:
attrs1[0].MyData = "A New String";
변경 사항을 보여주기 위해 다른 인스턴스 만들기:
ASCII[] attrs3 = (ASCII[])typeof(MyClass).GetCustomAttributes(typeof(ASCII), false); MessageBox.Show(attrs3[0].MyData);
참조: http:/ /www.vsj.co.uk/articles/display.asp?id=713
위 내용은 어셈블리 로드 후 특성 속성을 동적으로 변경할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!