* 강력한 텍스트 * 1 .- 가 2 .- 레이블의 이름을 사용하여 라벨을 찾기 (I 라벨의 이름이 동일하다는 것을 supossed 한
배열에 루프를 수행 당신은 배열에있는 imput 문자열)
컨트롤을
foreach (string name in yourArray)
{
var matches = this.Controls.Find(name , true);
((Label) matches).Enable = False
}
을 해제 3 .- 것을 내가 지금 여기에 컴파일러가없는, 나는 그것이 실행되기를 바랍니다. 그렇지 않으면 이해하십시오.
편집 : 자신의 텍스트 속성에 의해 라벨 찾기 : 레이블 패널, 그룹 상자, 또는 콘텐츠 컨트롤의 내부에있는 경우
foreach(Control c in this.Controls)
{
if(c is Label)
{
if((Label) c).Text == "RequiredText")
{
// Do stuff here ;
}
}
}
하십시오,주의 대신 contentControl.Controls을 우도해야 할 것 'this'를 사용하는 것.
편집 2 : 좋아,이 코드는 나를 위해 작동합니다. "샘플"텍스트가있는 레이블이 있습니다.
var myarray = "E1,E2,Sample".Split(',');
foreach (Control labelcontrol in this.Controls)
{
if (!(labelcontrol is Label)) continue;
foreach (var text in myarray)
{
if (labelcontrol.Text == text)
labelcontrol.Enabled = false;
}
}
시도한 접근 방식은 합리적입니다. 왜 작동하지 않았습니까? –
"필수 텍스트"가 포함 된 레이블을 찾는 방법을 알려줄 수 있습니까? –
좋아, 현재 내 VS2010에서 작동하는 코드로 내 대답을 편집했습니다. 제발, 유럽 최종 축구 경기 (스페인 대 이탈리아) 시작하기 전에 작동하는지 확인하십시오 :) 나는 여기에 : D – Jonathan