Springen naar inhoud


WPF

Combobox In Datagrid

Combobox Datagrid

  • Log in a.u.b. om te beantwoorden
Er zijn 7 reacties in dit onderwerp

#1 Hypenate

Hypenate

    Guru Developer

  • Moderators
  • 1197 berichten
    Laatst bezocht 21 Aug 2014 13:28
  • LocatieSint-Truiden
Inzender

Geplaatst op 22 February 2013 - 15:10


Ik had graag de aanpassingen laten plaatsvinden via de datagrid ipv via textboxen en comboboxen...
Echter weet ik niet hoe ik de combobox de juiste waarde moet laten weergeven...

Vermits beelden meer zeggen dan woorden...
Bijlage  datagridCombobox.jpg   22.29K   3 downloads
1. Lees zeker onze huisregels en gebruik code-tags indien nodig
2. Indien je vraag correct beantwoord is, gelieve dit te melden in de post
-
3. We zijn allemaal vrijwilligers, keep it cool

#2 Hypenate

Hypenate

    Guru Developer

  • Moderators
  • 1197 berichten
    Laatst bezocht 21 Aug 2014 13:28
  • LocatieSint-Truiden
Inzender

Geplaatst op 23 February 2013 - 14:51

Of als iemand weet hoe het in de gewone formulieren moet, mag ook altijd.
Dan weet ik toch in welke richting ik mijn neus moet zetten :).
1. Lees zeker onze huisregels en gebruik code-tags indien nodig
2. Indien je vraag correct beantwoord is, gelieve dit te melden in de post
-
3. We zijn allemaal vrijwilligers, keep it cool

#3 Benno

Benno

    Master Developer

  • Leden
  • PipPipPipPipPip
  • 949 berichten
    Laatst bezocht 10 Aug 2014 13:16
  • LocatieGyor, Magyarország

Geplaatst op 23 February 2013 - 19:24

Ik begrijp al niet wat je precies vraagt in #1 (blijkbaar zeggen beelden niet altijd meer dan woorden), en ook al niet wat je bedoelt met "gewone formulieren" in #2.
Sorry. :blush:

Mijn beste gok is: wil je een combobox vullen in een datagrid in wpf?

#4 Benno

Benno

    Master Developer

  • Leden
  • PipPipPipPipPip
  • 949 berichten
    Laatst bezocht 10 Aug 2014 13:16
  • LocatieGyor, Magyarország

Geplaatst op 23 February 2013 - 21:17

In de hoop dat ik juist heb gegokt...


Met volgend enum:
Visual Basic Code:
Public Enum Status
	Ongekend
	Nieuw
	Actief
	Bestuurslid
	Erelid
End Enum

en de klasse:
Visual Basic Code:
Public Class Lid
	Public Sub New(naam As String, status As Status)
		Me.Naam = naam
		Me.Status = status
	End Sub

	Public Property Naam As String

	Public Property Status As Status


	Shared Function GetAll() As Lid()
		Return {New Lid("Françoise", Status.Bestuurslid),
		  New Lid("Sylvie", Status.Erelid),
		  New Lid("Ferenç", Status.Actief),
		  New Lid("Horvath", Status.Nieuw)}
	End Function
End Class


En Grid:
XAML Code:
	 		 <DataGrid x:Name="DataGridLeden" HorizontalAlignment="Left" VerticalAlignment="Top"
					  Height="322" Width="508" AutoGenerateColumns="False">
				<DataGrid.Columns>
					<DataGridTextColumn Binding="{Binding Naam}" Header="Naam"/>
					<DataGridComboBoxColumn x:Name="StatusCombo" Header="Status"
						SelectedItemBinding="{Binding Status}" >
					</DataGridComboBoxColumn>
				</DataGrid.Columns>
			</DataGrid>


en code:
Visual Basic Code:
Class MainWindow
	Public Sub New()
		' This call is required by the designer.
		InitializeComponent()
		' Add any initialization after the InitializeComponent() call.
		StatusCombo.ItemsSource = [Enum].GetValues(GetType(Status))
		DataGridLeden.ItemsSource = Lid.GetAll

	End Sub
End Class


krijg je:
Bijlage  wpfgrid.png   17.11K   3 downloads

#5 Hypenate

Hypenate

    Guru Developer

  • Moderators
  • 1197 berichten
    Laatst bezocht 21 Aug 2014 13:28
  • LocatieSint-Truiden
Inzender

Geplaatst op 27 February 2013 - 10:32

Maar hoe doe ik dat een dt.Update?
Nu heb ik allemaal tekstvakken en doe ik de Update 'manueel' zeg maar.
Maar als ik een dt.Update zou kunnen doen zou mij dat erg veel werk uitsparen :).
1. Lees zeker onze huisregels en gebruik code-tags indien nodig
2. Indien je vraag correct beantwoord is, gelieve dit te melden in de post
-
3. We zijn allemaal vrijwilligers, keep it cool

#6 Benno

Benno

    Master Developer

  • Leden
  • PipPipPipPipPip
  • 949 berichten
    Laatst bezocht 10 Aug 2014 13:16
  • LocatieGyor, Magyarország

Geplaatst op 27 February 2013 - 10:41

Wat is dt?

Datatable? Gebruik je binding via een DataTable, DataSet?
Waar en hoe doe je de binding? @Design time, @run time?
Toon je xaml en code.

#7 Hypenate

Hypenate

    Guru Developer

  • Moderators
  • 1197 berichten
    Laatst bezocht 21 Aug 2014 13:28
  • LocatieSint-Truiden
Inzender

Geplaatst op 27 February 2013 - 23:15

Hier een werkend voorbeeldje, echter deze grid bevat geen combobox (dus ook geen relaties):

Visual Basic Code:
Public Class frmCarriersAanpassenGrid
Dim DsFirma As Security.dsFirma

#Region "Laden"
Public Sub LadenCarriers()
Try
DsFirma = CType(Me.FindResource("DsFirma"), Security.dsFirma)
'Load data into the table tblCarrier. You can modify this code as needed.
Dim DsFirmatblCarrierTableAdapter As Security.dsFirmaTableAdapters.tblCarrierTableAdapter = New Security.dsFirmaTableAdapters.tblCarrierTableAdapter()
DsFirmatblCarrierTableAdapter.Fill(DsFirma.tblCarrier)
Dim TblCarrierViewSource As System.Windows.Data.CollectionViewSource = CType(Me.FindResource("TblCarrierViewSource"), System.Windows.Data.CollectionViewSource)
TblCarrierViewSource.View.MoveCurrentToFirst()
Catch ex As Exception
fout(Me.Name, Nothing, ex, "Laden Carriers")
End Try
End Sub
#End Region

Private Sub Window_Loaded_1(sender As Object, e As RoutedEventArgs) Handles MyBase.Loaded
LadenCarriers()
End Sub

Private Sub btnOpslaan_Click(sender As Object, e As RoutedEventArgs) Handles btnOpslaan.Click
Try
Dim ta As New dsFirmaTableAdapters.tblCarrierTableAdapter
ta.Update(DsFirma.tblCarrier)
Catch ex As Exception
fout(Me.Name, sender, ex, "Datatable")
Finally
Me.Close()
End Try
End Sub
End Class

XAML Code:
<Window
	xmlns="http://schemas.micro...l/presentation"
	xmlns:x="http://schemas.micro...infx/2006/xaml"
	xmlns:local="clr-namespace:Security" x:Class="frmCarriersAanpassenGrid"
	Title="Aanpassen" Height="300" Width="300">
	<window.Resources>
		<local:dsFirma x:Key="DsFirma"/>
		<CollectionViewSource x:Key="TblCarrierViewSource" Source="{Binding tblCarrier, Source={StaticResource DsFirma}}"/>
	</window.Resources>
	<Grid DataContext="{StaticResource TblCarrierViewSource}" Style="{StaticResource BBgrd}">
		<Grid.RowDefinitions>
			<RowDefinition Height="*"/>
			<RowDefinition Height="50"/>
		</Grid.RowDefinitions>
		<DataGrid x:Name="TblCarrierDataGrid" Style="{StaticResource BBdgv}" IsReadOnly="False" CanUserAddRows="False" AutoGenerateColumns="False" EnableRowVirtualization="True" ItemsSource="{Binding}" RowDetailsVisibilityMode="VisibleWhenSelected">
			<DataGrid.Columns>
				<DataGridTextColumn x:Name="IDColumn" Binding="{Binding ID}" Header="ID" Width="Auto" Visibility="Hidden"/>
				<DataGridTextColumn x:Name="CarrierColumn" Binding="{Binding carrier}" Header="Carrier" Width="Auto"/>
			</DataGrid.Columns>
		</DataGrid>
		<Button x:Name="btnOpslaan" Content="Opslaan" Style="{StaticResource BBbtn}" HorizontalAlignment="Left" Margin="10,0,0,10" Grid.Row="1" VerticalAlignment="Bottom" Width="75"/>
	</Grid>
</Window>



1. Lees zeker onze huisregels en gebruik code-tags indien nodig
2. Indien je vraag correct beantwoord is, gelieve dit te melden in de post
-
3. We zijn allemaal vrijwilligers, keep it cool

#8 Hypenate

Hypenate

    Guru Developer

  • Moderators
  • 1197 berichten
    Laatst bezocht 21 Aug 2014 13:28
  • LocatieSint-Truiden
Inzender

Geplaatst op 01 March 2013 - 13:43

Eigenlijk zou het zo wat moeten werken als Acces...Volgens mij is dit zeker mogelijk maar hoe?
'k Vind er niet echt iets van op het internet (of ik geef de foutieve woorden in).
1. Lees zeker onze huisregels en gebruik code-tags indien nodig
2. Indien je vraag correct beantwoord is, gelieve dit te melden in de post
-
3. We zijn allemaal vrijwilligers, keep it cool





Ook met taq WPF, Combobox, Datagrid voorzien

0 gebruiker(s) lezen dit onderwerp

0 lid(leden), 0 bezoeker(s), 0 anonieme gebruikers

Inloggen


[WPF] Untitled 1

Hosting provided by Combell
Met dank aan Jürgen voor de jarenlange inzet van visualbasic.be (anno dec 2000)
Met dank aan Mike en Ronneke voor de jarenlange inzet van vbib.be (anno dec 2010)
vbib.be - vbnet.be - vbdotnet.be - visualbasic.be