Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

WPF und C-Sharp Binding a Variable

Frage Entwicklung VB for Applications

Mitglied: Hitman4021

Hitman4021 (Level 2) - Jetzt verbinden

17.04.2012 um 09:38 Uhr, 3715 Aufrufe, 4 Kommentare

Hallo, ich habe vor kurzem beschlossen mir mal wider was neues anzuschauen(C# und WPF). Doch nun stehe ich schon vor einem Problem das ich leider nicht selbst lösen kann.

Ich möchte aus dem Registry Key: HKEY_Current_User\Software\Car\ den Wert des Schlüssels "MARKE_IMAGE" auslesen und diesen Pfad im XAML als Pfad zu einem Bild verwenden. Allerdings bekomme ich statt des Bildes nur eine leere Stelle. Ich denke mein Problem liegt irgendwo beim übergeben an IMAGE_NAME. Ich hoffe irgendwer kann mir hier etwas weiterhelfen.

page1.xaml.cs
01.
using System; 
02.
using System.Collections.Generic; 
03.
using System.Linq; 
04.
using System.Text; 
05.
using System.Windows; 
06.
using System.Windows.Controls; 
07.
using System.Windows.Data; 
08.
using System.Windows.Documents; 
09.
using System.Windows.Input; 
10.
using System.Windows.Media; 
11.
using System.Windows.Media.Imaging; 
12.
using System.Windows.Navigation; 
13.
using System.Windows.Shapes; 
14.
using System.Security.Permissions; 
15.
using Microsoft.Win32; 
16.
 
17.
[assembly: RegistryPermissionAttribute(SecurityAction.RequestMinimum, 
18.
    ViewAndModify = "HKEY_CURRENT_USER")] 
19.
 
20.
namespace TEST_0_1 
21.
22.
    public partial class TEST : Page 
23.
    {     
24.
public class IMAGE 
25.
26.
        private string _IMAGE;        
27.
        public string GET_IMAGE() 
28.
29.
            RegistryKey rk = 
30.
            Registry.CurrentUser.OpenSubKey 
31.
            (@"Software\CAR"); 
32.
            string GET_IMAGE = (string)rk.GetValue("MARKE_IMAGE"); 
33.
            rk.Close(); 
34.
            return _IMAGE; 
35.
36.
 
37.
        public string IMAGE_NAME 
38.
39.
            get { return _IMAGE; } 
40.
            set { _IMAGE = value; } 
41.
42.
43.
}
page1.caml
01.
<Page x:Class="TEST_0_1.TEST" 
02.
      xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
03.
      xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
04.
      xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"  
05.
      xmlns:my="clr-namespace:TEST_0_1" 
06.
      xmlns:d="http://schemas.microsoft.com/expression/blend/2008"  
07.
      mc:Ignorable="d"  
08.
      d:DesignHeight="480" d:DesignWidth="640" 
09.
      Title="Home"> 
10.
        <Grid x:Name="LayoutRoot" HorizontalAlignment="Center" VerticalAlignment="Center" Width="640" Height="480"> 
11.
        <Grid.Resources> 
12.
            <my:IMAGE x:Key="myIMAGE" IMAGE_NAME="Spot"/> 
13.
        </Grid.Resources> 
14.
            <Image HorizontalAlignment="Right" Margin="0,115,70,115" Width="200" Height="200" Source="{Binding IMAGE_NAME, Mode=Default}" DataContext="{StaticResource MyIMAGE}" Stretch="Fill"/> 
15.
        </Grid>
Was mache ich hier falsch?

Danke schonmal für die Hilfe

Mit freundlichen Grüßen
Mitglied: SlainteMhath
17.04.2012 um 09:49 Uhr
Moin,

01.
[...] 
02.
string GET_IMAGE = (string)rk.GetValue("MARKE_IMAGE");  
03.
[...] 
04.
return _IMAGE;  
05.
[...]
Na, findest Du den Fehler?
Bitte warten ..
Mitglied: Hitman4021
17.04.2012 um 10:07 Uhr
Hallo,

Okay das habe ich hier jetzt geändert.
01.
    public class IMAGE 
02.
03.
        private string _IMAGE;        
04.
        public string GET_IMAGE() 
05.
06.
            RegistryKey rk = 
07.
            Registry.CurrentUser.OpenSubKey 
08.
            (@"Software\CAR"); 
09.
            string _IMAGE = (string)rk.GetValue("MARKE_IMAGE"); 
10.
            rk.Close(); 
11.
            return _IMAGE; 
12.
        }    
13.
 
14.
        public string IMAGE_NAME 
15.
16.
            get { return _IMAGE; } 
17.
            set { _IMAGE = value; } 
18.
19.
    }
Aber anscheinend habe ich noch irgendwo einen Fehler?
Die Stelle wo das Bild sein sollte ist noch immer leer?

[EDIT]
Wird die Seite aufgebaut bevor der C# Code ausgewertet wird?
bzw. Ist die Variable beim Aufbau der Seite noch leer?
Ist das möglich?
[/EDIT]

Mit freundlichen Grüßen
Bitte warten ..
Mitglied: masterofavenger
17.04.2012 um 15:00 Uhr
Hallo,

ich denke das Du den falschen Datentyp in die Source steckst.

Lt. meinen Erfahrungen solltest Du eine ImageSource verwenden, dann sollte es klappen...
Bitte warten ..
Mitglied: Hitman4021
17.04.2012 um 18:40 Uhr
Hallo,

leider nein, ich habe jetzt statt string ImageSource verwendet aber ich bekomme noch immer kein Bild.

Ich poste hier mal den gesamten Code der 2 Seiten. Vl liegt der Fehler ja ganz woanders?
Ich komme leider echt nicht mehr weiter :/

MENÜ.xaml
01.
<Page x:Class="MENUE.TEST" 
02.
      xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
03.
      xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
04.
      xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"  
05.
      xmlns:my="clr-namespace:MENUE" 
06.
      xmlns:d="http://schemas.microsoft.com/expression/blend/2008"  
07.
      mc:Ignorable="d"  
08.
      d:DesignHeight="480" d:DesignWidth="640" 
09.
	Title="MENÜ - Home"> 
10.
     
11.
        <Grid x:Name="LayoutRoot" HorizontalAlignment="Center" VerticalAlignment="Center" Width="640" Height="480"> 
12.
        <Grid.Resources> 
13.
            <my:IMAGE x:Key="myIMAGE" IMAGE_NAME="Spot"/> 
14.
        </Grid.Resources> 
15.
        <Grid.Background> 
16.
                <LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0"> 
17.
                    <GradientStop Color="Black" Offset="0"/> 
18.
                    <GradientStop Color="White" Offset="1"/> 
19.
                </LinearGradientBrush> 
20.
            </Grid.Background> 
21.
            <GridSplitter HorizontalAlignment="Stretch" Margin="0,0,8,0" Width="640" Height="480"> 
22.
                <GridSplitter.Background> 
23.
                    <LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0"> 
24.
                        <GradientStop Color="Black" Offset="0"/> 
25.
                        <GradientStop Color="White" Offset="1"/> 
26.
                    </LinearGradientBrush> 
27.
                </GridSplitter.Background> 
28.
            </GridSplitter> 
29.
            <Button x:Name="Car_Info" HorizontalAlignment="Left" Margin="50,50,0,0" VerticalAlignment="Top" Width="150" Height="50" Content="Car Info"/> 
30.
            <Button x:Name="Navigation" HorizontalAlignment="Left" Margin="50,150,0,0" VerticalAlignment="Top" Width="150" Height="50" Content="Navigation"/> 
31.
            <Button x:Name="MP3_Play" HorizontalAlignment="Left" Margin="50,250,0,0" VerticalAlignment="Top" Width="150" Height="50" Content="MP3 Player"/> 
32.
            <Button x:Name="Settings" HorizontalAlignment="Left" Margin="50,350,0,0" VerticalAlignment="Top" Width="150" Height="50" Content="Settings"/> 
33.
            <Image HorizontalAlignment="Right" Margin="0,115,70,115" Width="200" Height="200" Source="{Binding IMAGE_NAME, Mode=Default}" Stretch="Fill"/> 
34.
    </Grid> 
35.
</Page>
MENÜ.xaml.cs
01.
using System; 
02.
using System.Collections.Generic; 
03.
using System.Linq; 
04.
using System.Text; 
05.
using System.Windows; 
06.
using System.Windows.Controls; 
07.
using System.Windows.Data; 
08.
using System.Windows.Documents; 
09.
using System.Windows.Input; 
10.
using System.Windows.Media; 
11.
using System.Windows.Media.Imaging; 
12.
using System.Windows.Navigation; 
13.
using System.Windows.Shapes; 
14.
using System.Security.Permissions; 
15.
using Microsoft.Win32; 
16.
 
17.
[assembly: RegistryPermissionAttribute(SecurityAction.RequestMinimum, 
18.
    ViewAndModify = "HKEY_CURRENT_USER")] 
19.
 
20.
namespace MENUE 
21.
22.
    public partial class TEST : Page{ 
23.
     
24.
        public TEST() 
25.
26.
            this.InitializeComponent(); 
27.
            Car_Info.Click += new RoutedEventHandler(Car_Info_Click); 
28.
            Navigation.Click += new RoutedEventHandler(Navigation_Click); 
29.
            MP3_Play.Click += new RoutedEventHandler(MP3_Play_Click); 
30.
            Settings.Click += new RoutedEventHandler(Settings_Click); 
31.
32.
 
33.
        // Funktionen der Knöpfe 
34.
        void Car_Info_Click(object sender, RoutedEventArgs e) 
35.
36.
            this.NavigationService.Navigate(new Uri("SITE.xaml", UriKind.Relative)); 
37.
38.
 
39.
        void MP3_Play_Click(object sender, RoutedEventArgs e) 
40.
41.
            throw new NotImplementedException(); 
42.
43.
 
44.
        void Navigation_Click(object sender, RoutedEventArgs e) 
45.
46.
            throw new NotImplementedException(); 
47.
48.
        void Settings_Click(object sender, RoutedEventArgs e) 
49.
50.
            this.NavigationService.Navigate(new Uri("./Settings/Settings_Main.xaml", UriKind.Relative)); 
51.
52.
53.
 
54.
        public class IMAGE 
55.
56.
        private ImageSource _IMAGE; 
57.
        public ImageSource GET_IMAGE() 
58.
59.
            RegistryKey rk = 
60.
            Registry.CurrentUser.OpenSubKey 
61.
            (@"Software\CAR"); 
62.
            ImageSource _IMAGE = (ImageSource)rk.GetValue("MARKE_IMAGE"); 
63.
            rk.Close(); 
64.
            return _IMAGE; 
65.
66.
 
67.
        public ImageSource IMAGE_NAME 
68.
69.
            get { return _IMAGE; } 
70.
            set { _IMAGE = value; } 
71.
72.
73.
}
Hat jemand eine Idee was ich hier falsch mache?

Gruß
Hitman
Bitte warten ..
Neuester Wissensbeitrag
Humor (lol)

Linkliste für Adventskalender

(3)

Information von nikoatit zum Thema Humor (lol) ...

Ähnliche Inhalte
Visual Studio
C-Sharp WPF Binding TextBox.Text und Property MVVM (die 2.) (4)

Frage von mayho33 zum Thema Visual Studio ...

Visual Studio
gelöst C-Sharp WPF Grid Visibility (4)

Frage von mayho33 zum Thema Visual Studio ...

Visual Studio
gelöst C-Sharp WPF Controls und Extensions (3)

Frage von mayho33 zum Thema Visual Studio ...

Batch & Shell
gelöst Selected Gridview Value in Variable schreiben (4)

Frage von reissaus73 zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Router & Routing
gelöst Ipv4 mieten (22)

Frage von homermg zum Thema Router & Routing ...

Windows Server
DHCP Server switchen (20)

Frage von M.Marz zum Thema Windows Server ...

Exchange Server
gelöst Exchange 2010 Berechtigungen wiederherstellen (20)

Frage von semperf1delis zum Thema Exchange Server ...

Hardware
gelöst Negative Erfahrungen LAN-Karten (19)

Frage von MegaGiga zum Thema Hardware ...