WPF DataGrid элементтеріСілтемелерді байланыстыру Linq

Міне, менің мәселе. Менде wpf дерекқоры бар, және мен байланыстамын .emsSource linq сұрау IEnumerable нәтижеге. Бұл жақсы жұмыс істейді. Бағдарламаны іске қосқан кезде деректер деректер дұрыстығында дұрыс жүктеледі. Менің мәселе тым көп деректер көрсетіледі. (IE пайдаланушыларына ID өрістерін көрудің қажеті жоқ және т.б.). Мен не істеуге тырысамын, немен айналысамын .семсурс, бірнеше бағандарды жасырғым келеді. Мен оны таптым .Оны орнатуға тырысады, бірақ бағандар объектісі бос. Байланысты кейін келесі әдістерді қолданамын: .ems.Refresh() және .UpdateLayout ().

Менің сұрағым - қандай әдіс мен бағанды ​​жаңартуға шақыру керек?

3

3 жауаптар

Басқа шешім сіздің linq сұрауыңызды өзгерте алады. Жай көргіңіз келетін бағандарды ғана таңдаңыз:

dataGrid.ItemsSource = myquery.Select(x => new { Name = x.Name, Age = x.Age });
2
қосылды
Ия, мен оны бастапқыда жасадым, бірақ егер идентификатор қажет болса, онда мен атауды іздеуге тура келеді ... Бірақ жақсы идея.
қосылды автор user959729, көзі

Неге DataGrid-ті нақты анықтамаңыз? http://www.wpftutorial.net/DataGrid.html - Бұл сізге көмектесе алады AutoGenerated бағандарын пайдаланудың орнына DataGrid-ты қолмен орнату.

0
қосылды
Менде де бар болса, аламын, бірақ бағанды ​​айқындамауға тырысамын. Мен үшін, элементтердің көзін орнатқаннан кейін, бағандарды объектіге орналастыруға арналған нәрсе болуы керек сияқты.
қосылды автор user959729, көзі

Егер сіз пайдаланғыңыз келсе. DataGrid бағанының мүмкіндігін DataGrid-та деректерді жүктегеннен кейін жасаңыз. DataGrid элементі ItemSource-ты байланыстырудан кейін ғана жүктелмейді; сондықтан сіз бос бағандар нысандарын аласыз.

Бұл сіз үшін жұмыс істейтініне үміттенемін.

0
қосылды
Жауап бергеніңіз үшін рахмет. Бұл мен жасамауға тырысқаным. Мен бағанды ​​көрнекіліктік қасиеттерін тікелей кейінірек шақыруға болатындықтан ItemSource-ты байланыстырудан кейін жүктемені қолмен жүктеуді қаладым. Бірақ мен жол таба алмадым.
қосылды автор user959729, көзі