@Wilfried Danke für den Link. Da hat sich jemand echt Mühe gegeben, um uns Einsteiger zu motivieren;-) Das werde ich durcharbeiten und vielleicht ist das dann ja meine lösung. Trotzdem möchte ich hypersurfs Bitte nachkommen und meinen Code hier reinstellen. Allerdings weiß ich nicht, ob ich das richtig mache. Ich versuch´s einfach mal.
<Window x:Class="BindingTest.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:local="clr-namespace:BindingTest"
mc:Ignorable="d"
Title="Plattensammlung" Height="478.945" Width="482.512" Loaded="Window_Loaded">
<Grid>
<Label x:Name="label" Content="Nummer" HorizontalAlignment="Left" Margin="85,14,0,0" VerticalAlignment="Top"/>
<TextBox x:Name="tbxNummer" HorizontalAlignment="Left" Height="24" Margin="270,18,0,0" VerticalAlignment="Top" Width="126" Text="{Binding platten.id, BindsDirectlyToSource=True, StringFormat=\{0:D\}}"/>
<Label x:Name="label1" Content="Schallplatte" HorizontalAlignment="Left" Margin="85,56,0,0" VerticalAlignment="Top"/>
<TextBox x:Name="tbxPlattenName" HorizontalAlignment="Left" Height="28" Margin="270,60,0,0" VerticalAlignment="Top" Width="126" Text="{Binding platten.name}"/>
<ListView x:Name="listView" HorizontalAlignment="Left" Height="207" Margin="85,192,0,0" VerticalAlignment="Top" Width="316">
<ListView.View>
<GridView>
<GridViewColumn/>
</GridView>
</ListView.View>
</ListView>
<Label x:Name="label2" Content="Titel" HorizontalAlignment="Left" Margin="85,161,0,0" VerticalAlignment="Top"/>
<Label x:Name="label3" Content="Regal" HorizontalAlignment="Left" Margin="85,108,0,0" VerticalAlignment="Top"/>
<TextBox x:Name="tbxRegalNummer" HorizontalAlignment="Left" Height="30" Margin="270,108,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Width="126"/>
<Button x:Name="button" Content="Abbrechen" HorizontalAlignment="Left" Height="22" Margin="355,420,0,0" VerticalAlignment="Top" Width="101" Click="button_Click"/>
<Button x:Name="btnNeu" Content="Neu" HorizontalAlignment="Left" Height="22" Margin="26,420,0,0" VerticalAlignment="Top" Width="106" Click="btnNeu_Click"/>
<Button x:Name="btnSpeichern" Content="Speichern" HorizontalAlignment="Left" Height="22" Margin="156,420,0,0" VerticalAlignment="Top" Width="102" Click="btnSpeichern_Click"/>
</Grid>
</Window>
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;
using System.Data;
using System.Data.SqlClient;
namespace BindingTest
{
/// <summary>
/// Interaktionslogik für MainWindow.xaml
/// </summary>
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
}
private void button_Click(object sender, RoutedEventArgs e)
{
Close();
}
private void Window_Loaded(object sender, RoutedEventArgs e)
{
SqlConnection conPlatten = new SqlConnection();
conPlatten.ConnectionString = "Data Source=(local)\\MSSQLLocalDB; Initial Catalog=platten; Integrated Security=False";
conPlatten.Open();
DataSet dsPlatten = new DataSet();
SqlDataAdapter daPlatten = new SqlDataAdapter("SELECT * FROM platten WHERE ID=1", conPlatten);
daPlatten.Fill(dsPlatten, "Platten");
conPlatten.Close();
DataTable dtPlatten = dsPlatten.Tables["Platten"];
tbxNummer.DataContext = dtPlatten; // ab hier bin ich mir nicht mehr sicher, ob das so funktioniert - siehe die Bindings im XAML
tbxPlattenName.DataContext = dtPlatten;
tbxRegalNummer.DataContext = dtPlatten;
}
private void btnSpeichern_Click(object sender, RoutedEventArgs e)
{
}
private void btnNeu_Click(object sender, RoutedEventArgs e)
{
}
}
}
BG
Thomas