2012-03-01 2 views
0

Asp.net 4.0 C에서 ListView 컨트롤이 있습니다. C# 텍스트 모드로 기본 모드 = 편집 모드를 만들려고합니다. 그래서 Item Template (기본 템플릿)을 가져 와서 DataBox 레이블을 TextBoxes로 바꿨습니다. 괜찮습니다. 텍스트 상자를 제외하고 상자는 다른 모든 행에만 적용됩니다. 따라서 절반은 페이지로드의 텍스트 상자이고 나머지 절반은 여전히 ​​라벨입니다. 여기 내 코드입니다 :기본 편집 모드에서 ListView 컨트롤 만들기

 <ItemTemplate> 
     <tr style=""> 
      <td> 
      <asp:Label ID="TitleLabel" runat="server" Text='<%# Eval("Title") %>' /> 
      </td> 
      <td> 

        <asp:TextBox ID="DiscountPercentageTextBox" runat="server" 
        Text='<%# Bind("DiscountPercentage") %>' /> 
      </td> 
      <td> 

      <asp:TextBox ID="CashTextBox" runat="server" Text='<%# Bind("Cash") %>' /> 
      </td> 
     </tr> 
    </ItemTemplate> 
     <LayoutTemplate> 
    <table> 
     <thead> 
      <tr> 
       <th>Title </th> 
       <th>DiscountPercentage</th> 
       <th>Cash</th> 
      </tr> 
     </thead> 
     <tbody> 
      <asp:PlaceHolder runat="server" ID="itemPlaceholder" /> 
     </tbody> 
    </table> 
</LayoutTemplate> 

는 그리고 여기 결과입니다 :

enter image description here

당신이 볼? 다른 모든 행은 텍스트 상자입니다. 모든 행이 텍스트 상자가되어야합니다. 내가 도대체 ​​뭘 잘못하고있는 겁니까?

+0

사람들은 여전히 ​​Webforms를 사용합니까?! – Jack

답변

0

아, AlternatingItemTemplate이 정의되어 있습니까? ListVIew에는 원래 필드를 레이블로 사용하는 인텔리전스가 없습니다.

정의되지 않은 경우 ALternatingItemTemplate도 ItemTemplate으로 사용하십시오.

+0

예! 고마워요. 해냈어! 녹색 체크 마크! –

관련 문제