SQL Server 데이터 소스에 연결된 gridview가 있습니다. 현재 선택된 항목을 ListBox로 이동하여 선택한 레코드를 표시하고 있습니다. AJAX Toolkit의 ReOrderList로 전환하여 선택한 항목의 순서를 바꿀 수 있습니다. 불행히도 ReorderList는 바인딩 할 실제 데이터 소스가 필요합니다. 사용자가 사용할 일종의 임시 테이블을 만드는 가장 좋은 방법은 무엇입니까?임시 데이터 소스
답변
그래, 당신이 할 수있는 일은 viewstate에 임시 목록 데이터 원본을 유지하는 것입니다. 여기에 거친 예입니다
<asp:ScriptManager ID="SM1" runat="server"></asp:ScriptManager>
<ajaxToolkit:ReorderList ID="RList" runat="server"
DragHandleAlignment="Left" ItemInsertLocation="End"
AllowReorder="true" ShowInsertItem="true" PostBackOnReorder="false">
<ItemTemplate>
<p><%# Eval("ID") %> = <%# Eval("Name") %></p>
</ItemTemplate>
</ajaxToolkit:ReorderList>
<asp:Button ID="ButtonAdd" runat="server" OnClick="ButtonClick_AddItem" Text="Add New" />
를 다음 코드 숨김에서 :
public partial class SortList : System.Web.UI.Page
{
[Serializable]
public class MyItem
{
public Guid Id { get; set; }
public string Name { get; set; }
public MyItem(Guid id, string name)
{
Id = id;
Name = name;
}
}
protected List<MyItem> MyList
{
get
{
if (ViewState["myClass"] == null)
ViewState["myClass"] = new List<MyItem>();
return (List<MyItem>)ViewState["myClass"];
}
}
protected void AddItem(Guid id, string name)
{
MyList.Add(new MyItem(id, name));
RList.DataSource = MyList;
RList.DataBind();
}
protected void ButtonClick_AddItem(object sender, EventArgs e)
{
AddItem(Guid.NewGuid(), DateTime.Now.Ticks.ToString());
}
}
은 분명히 당신이 저장하고의 GridView 선택 항목 이벤트와 버튼을 대체 할 무엇 이건 MyItem 클래스를 대체 할 것입니다. 그러나 원칙적으로 거기에 있기를 바랍니다.
나는 따라 가지 않습니다. ReOrderList has a DataSourceID property은 기존 SqlDataSource를 가리킬 수 있습니다. 아니면 실제로 SqlDataSource 컨트롤을 가지고 있지 않습니까?
그렇지 않다면 데이터를 GridView에 어떻게 바인딩합니까? 어떤 종류의 객체 콜렉션에 바인딩하는 경우 IList 인터페이스를 구현하는 한 ObjectDataSource를 대신 사용할 수 있습니다. 대신 DataTable에 바인딩하려는 경우 ReorderList - bind to DataTable을 읽어야합니다.
죄송합니다. 분명치 않았습니다. 이것은 여기에 대한 나의 첫 번째 게시물이며 .NET 환경으로 돌아갈 것입니다. ReorderList는 데이터 바인딩 된 gridview에서 현재 "선택한"항목을 표시하는 ListBoX를 대체합니다. GridView는 사라지지 않을 것이며 ListBox 만 잘하면됩니다. – adamweeks
나는 이해하고 도움을주고 싶지만, 아직도 무엇을하려고하는지 잘 모르고있다. 사용자가 GridView에서 행을 선택할 수있게하고 해당 항목이 ReorderList에 나타나길 원한다는 말입니까? 그들이 끝내고 다시 명령을 내리고 나면 무엇을하고 싶니? –
그래, 그게 내가 원하는거야. 일단 ReorderList로 끝내면 데이터를 웹 서비스 애플리케이션에 전달하여 계산을 수행 한 다음 해당 데이터를 다시 사용자에게 반환합니다. (그 부분은 이제 ListBox와 함께 작동합니다) – adamweeks
- 1. 임시 데이터 저장소를 개선하십시오.
- 2. 임시 데이터를위한 코어 데이터
- 3. 임시 데이터 쓰기 R
- 4. 데이터 소스
- 5. iPhone UDP 임시 데이터 전송
- 6. Microsoft 테스트 에이전트 임시 데이터
- 7. android bestway 임시 데이터 유지
- 8. 장바구니에 대한 임시 데이터 저장
- 9. 데이터 소스 구성 마법사와 수동으로 데이터 소스 구성
- 10. Share ComboBox 데이터 소스
- 11. 문제 데이터 소스 속성
- 12. 데이터 소스 정보
- 13. 데이터 소스 속성 사용
- 14. XML 데이터 소스 표시
- 15. 오픈 소스 데이터 모델러
- 16. 원시 데이터 소스
- 17. 다른 데이터 소스
- 18. iPhone - UITableView 데이터 소스?
- 19. PDF Informatica의 데이터 소스
- 20. Persevere 데이터 소스 드라이버
- 21. java.lang.ClassNotFoundException : Glassfish의 데이터 소스
- 22. asp.net의 데이터 소스
- 23. JBOSS에서 데이터 소스 생성
- 24. 데이터 소스 재사용
- 25. 임시 초기화 목록에서 임시 참조에 임시 바인딩
- 26. 임시 테이블을 사용하여 Excel 파일의 데이터 저장
- 27. Android, 임시 데이터 저장에 대한 제안
- 28. Silverlight 데이터 바인딩 - 임시 일시 중지가 가능합니다
- 29. SQL 임시 테이블의 데이터 형식 찾기
- 30. php - 임시 양식 데이터 저장 방법
감사합니다! 나는 viewstate에서 읽었는데 아직 다루지 않았지만 이것이 내가 원하는 것을해야하는 것처럼 보인다. – adamweeks