2011-01-10 8 views
0

머리글 레이블과 텍스트 상자가있는 DataGrid을 만드는 데 약간의 문제가 있습니다.이 시점에서 나는 이것이 가능하다는 것을 완전히 확신하지 못합니다.
나는 동적으로 테이블을 작성해야합니다 (그리드가 동적으로 생성 될 필요가 있으므로, 열 수가 변경 할 수 있습니다와 XAML 코드 또는 이와 유사한에 지정된 바인딩을 사용할 수 없습니다) : 여기 필터링을위한 텍스트 상자가있는 DataGrid 열 머리글

는 내가하고 싶은거야 . 그러나 모든 열은 항상 텍스트 열입니다.

텍스트 열이므로 각 헤더에 텍스트 상자를 추가하여 DataGrid의 데이터를 간단하게 필터링 할 수 있습니다. 가능한 한 작게 유지하고자하므로 Silverlight 페이지의 다른 부분에 텍스트 필드를 추가하고 싶지 않습니다. 또한 열의 수가 동적이기 때문에 DataGrid 위에 많은 수의 텍스트 상자를 추가해도 좋지 않습니다. ;)

또한 가능한 경우 각 머리글에 레이블을 유지하여 열 이름도 표시하고 싶습니다. 추가 지금까지 해봤

하여 DataGridTextBoxColumnHeader하지만 같은 TextBox 나는 아주 간단한 실버 라이트 프로젝트에 전체 DataGrid이 표시되지 않습니다 그렇게 할 때.

도와주세요. 편집

: 나는이 질문에 대한 답 보았다 placing a text box inside the silverlight data grid column header

그러나, 대답 자체가 (예제가 너무 짧은에 갈 날이 많이 포기하지 않았다, 그리고 내가 XAML 너무 좋은 아니에요 아직) CodePlex의 코드는 Silverlight 페이지에 추가 필드를 추가하기 만합니다. 그 중 어떤 것도 동적으로 DataGrid을 생성하는 문제를 해결하지 못합니다.

답변

1

OK, 여기에 내가 각 열 머리글 내부에 별도의 텍스트 상자를 갖고 각 따라서 TextBox 생성의 Tag 속성을 작성의 기능을 달성하기 위해 Style을 사용했다 나의 문제 ... 해결이 무슨 짓을했는지 나중에 어떤 열이 변경되었는지 확인합니다.

+0

나는 당신의 문제가 있고 어떤 열이 변경되었는지 알아내는 방법을 모르겠다. 당신은 당신의 textboxes 태그로 무엇을 채우고 있습니까? –

+0

'스타일'을 사용하고 있으므로 고정 된 '태그'를 입력 할 수 없습니다. 그것은 무의미합니다. 'Tag = "{Binding}"'을 사용 했으므로 열 머리글에 넣은 내용을 참조해야합니다. – Shaamaan

+0

Shaamaan : 고마워,하지만 열 머리글이 페르시아어이고 영어 이름이 필요하기 때문에 coulmn Name에 refrence를 줄 수 있기를 바랍니다. 열 이름을 태그에 바인딩하는 방법이 있습니까? –

관련 문제