문제

나서 가로장 배경과 어떤 일에 ASP.NET 프로젝트(ASP MVC).질문에 초보자:무엇을 할 수있는 가장 쉬운 방법은 사용자 지정 편집기 위해 테이블 레코드?

예를 들어:내가 무리의 행과 데이터를 변경하려면"카테고리의"분야에서 각--아마 드롭다운 어쩌면에 대한 링크,어쩌면 사용자가합니다.

에 레일이,내가 반복 행 테이블을 만들고,있을 것입 양식에 대한 각각의 행이 있습니다.의 양식을 했을 입력 상자 또는 드롭다운,그리고 제출 데이터를 컨트롤러는 다음과 같"/item/수정/15?category=foo"어디 15itemID 고 새로운 카테고리는"foo".

나는 새로운 ASP.NET 모델고 확실하지 않고"오른쪽"의 방법이다-그냥 가장 간단한 방법이 다시 얻을 수있는 새로운 데이터를 저장합니다.나는 사용자 지정 제어를 추가하는 각 행?어떤 도움말 감사합니다.

도움이 되었습니까?

해결책

할 수 있습니다 정말 속임수 요즘에 새로운 동적 데이터로 함께 제공됩니다.NET3.5SP1.스콧 거스리는 블로그 항목에서 데모를 얼마나 빠르고 쉽게 그 흐름은 당신을 위해 여기:

http://weblogs.asp.net/scottgu/archive/2007/12/14/new-asp-net-dynamic-data-support.aspx

받지 않고는 최첨단,나는 사용 XSD 발전기를 생성하는 강력한 형식의 데이터 집합과 일치하는 테이블에서 질문입니다.이것은 또한 생성이브를 사용할 수 있습을 할 모든 당신의 CRUD 문입니다.

거기에서,바인딩하 DataGrid 고 활용하는 모든 표준 템플릿/이벤트 참여하는 등 EditIndex,SelectedIndex,RowEditing,rowupdated 는,등등.

내가 이 일을 해왔 초기부터 1.0 일니다.물 및 이러한 종류의 기능을 만들고 더 효율적으로의 모든 업데이트합니다.

편집:을 주고 싶다는 빠른 고개를 끄덕 매트 Berseth 블로그 뿐입니다.나는 다음과 같은 많은 자신의 물건입니다 중대하다!

다른 팁

거기에 몇 가지 제어 할 것입니다 이것은 당신을 위해,다양한 복잡성의 수준에 따라 그들의 상대적인 유연성이다.

전통적인 방법으로 할 것이 DataGrid 제어를 제공하는 테이블 레이아웃이 있습니다.당신이 원하는 무언가에 더 많은 유연성,외관의 목록과 ListView 컨트롤 또한 지원을 위한 편집,삽입 또는 필드를 삭제 뿐만 아니라.

체크아웃 매트 Berseth 의 블로그 일부의 우수 사례 asp.net 컨트롤에 액션입니다.

감사에 대한 답변들입니다.그것은 다음과 같 사용자 정의 데이터 이동 방법입니다.대 ASP.NET 초보자는 여기서 무슨 일을 해요

<asp:DataGrid ID="GridView1" runat="server" AutoGenerateColumns="False">
    <Columns>
        <asp:BoundColumn DataField="RuleID" Visible="False" HeaderText="RuleID"></asp:BoundColumn>
        <asp:TemplateColumn HeaderText="Category">
        <ItemTemplate>
            <!-- in case we want to display an image -->
            <asp:Literal ID="litImage" runat="server">
            </asp:Literal>
            <asp:DropDownList ID="categoryListDropdown" runat="server"></asp:DropDownList>
         </ItemTemplate>
        </asp:TemplateColumn>

    </Columns>
</asp:DataGrid>

이는 datagrid.우리는 그 다음에 바인딩하여 데이터 원본(DataTable 내 경우에는)사용 같은 것들

foreach (DataGridItem item in this.GridView1.Items)
{
     DropDownList categoryListDropdown = ((DropDownList)item.FindControl("categoryListDropdown"));
     categoryListDropdown.Items.AddRange(listItems.ToArray());
}

를 채우는 초기 드롭다운 목록에서 데이터는 그리드.액세스할 수도 있습니다 항목입니다.세포[0].텍스트를 얻을 수 RuleID 이 경우.

노트 자신을 위해:이 ASP.NET 모델는 모든 코드 숨김 파일입니다.높은 수준에서 당신은 항상 반복을 통해 GridView1.는 항목을 얻을 각 행 항목입니다.findControl("controlid 속성")쿼리 가치에 저장된 각 항목과 같은 누른 후"업데이트"버튼을 누릅니다.

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