2013-07-26 1 views
0

asp.net에서 컨트롤의 "name"특성이 asp.net에서 기본적으로 "id"값을 사용하는 이유는 무엇입니까?asp.net에서 컨트롤의 이름 특성은 기본적으로 ID가 필요합니다.

<%var ctrl =new HtmlInputText(); 



ctrl.ID = "ctrl_id"; 
ctrl.Name="ctrl_name"; 

    StringBuilder sb = new StringBuilder(); 
    System.IO.StringWriter sw = new System.IO.StringWriter(sb); 
    HtmlTextWriter writer = new HtmlTextWriter(sw); 

    ctrl.RenderControl(writer);%> 
    <%=sb.ToString()%> 

상기 코드는 제어를 표현하지만, 이름 속성의 값이 "ctrl_id"가 아닌 "ctrl_name"을 취

+0

당신은 모두를 시도 cntrl.Attributes.Add ("name", "cntrl_name"); –

답변

0

시도 : 이것은 약간 옆으로 인

ctrl.Attributes.Add("name","ctrl_name"); 
+0

나는 시도했다! 그 din 일, 나는 ctrl.Attributes.Add (ctrl.Name, "ctrl_name")와 같은 것을 시도했다; 및 해당 추가 기능 ctrl_id = "ctrl_name"같은 추가 특성, 나는 어떻게 ctrl_id wen 걸릴 이해 ctrl_name – Bency

+0

ctrl.Attributes.Add ("name", "ctrl_name"); –

+0

예 예 이미 시도했지만 이름이 여전히 "ctrl_id"를 유지합니다 – Bency

0

, 그러나 컨트롤을 페이지에 동적으로 추가하는 경우 일반적으로 다른 컨트롤의 자식 컨트롤 컬렉션에 직접 컨트롤을 추가하는 것이 좋습니다 (페이지에 Response.Write (보내지 않음)). ("cntrl_id", "ID") cntrl.Attributes.Add;

var ctrl =new HtmlInputText(); 
ctrl.ID = "ctrl_id"; 
ctrl.Name="ctrl_name"; 
//PlaceHolder1 has been defined in the ASPX page 
PlaceHolder1.Controls.Add(ctrl); 
+0

CHRIS! 하지만 문제는 idin 값을 기본값으로 사용하기 때문에 "name"값을 무시할 수있는 컨트롤을 addin 컨트롤과 함께 사용하지 않는 것입니다. – Bency

관련 문제