Hi,
one of my WinForm Apps uses WPF Bing Maps V.7 (I wrote a WPF DLL containing the Bing Maps control).
Inside this WPF DLL assembly, one of the components I am using is an 'Infobox' Grid consisted by:
- InfoboxTitle (TextBlock)
- InfoboxDescription (TextBlock)
- CloseInfobox (Button)
some years ago, when I created the assembly, I set the Infobox Background="Black" and the InfoboxTitle and InfoboxDescription Foreground="#1cff1c" ('electric' Green).
Now, I am trying to change the Background and Foreground from my App by changing the 2 Properties sending values to the WPF assembly.
I noticed 2 errors:
1. The compiler conplains at:
PUBLIC CLASS MainVM IMPLEMENTS INotifyPropertyChanged
this Class is used to change the 2 Properties.
By the way, the ILSpy (XSharp) code shows:
public class MainVM implement INotifyPropertyChanged (not implements)
when translates my C# project to X#.
2. The compiler conplains Inside the .XAML at keyword: local:
<Window.DataContext>
<local:MainVM/>
</Window.DataContext>
i.e. when I try to reference this Class inside the .XAML code in order to use it the 2 Properties.
I am attaching 2 projects:
A> a C# named Wpf_PropertyChanged:
it works just fine and I can see the Background, Foreground color changes in XAML Editor.
The problem is I cannot use it because my WPF assembly is Vulcan.NET (X# now) is big (has many components) and I don't want to translate it to C#.
B> a X# named Wpf_XS:
here you can see the 2 errors
Both .XAML files (C# and X#) contain the SAME code.
In the C# one, I have as comments the old: Background="Black", Foreground="#1cff1c"
but in the X#, I have as comments the new (desired) code: Background="{Binding Path=BackgroundColor}", Foreground="{Binding Path=ForegroundColor}".
I know there are experts on WPF in this Group (Nick, Dick, Wolfgang, Philip etc.).
Could you please tell me if the 2 previously mentioned problems are mine errors, or really errors ?
thanks and regards
George
WPF and X# 2.0.0.05
WPF and X# 2.0.0.05
- Attachments
-
- Wpf_XS.zip
- (9.75 KiB) Downloaded 74 times
-
- Wpf_PropertyChanged.zip
- (15.46 KiB) Downloaded 73 times
WPF and X# 2.0.0.05
Hi George,
About the compiler error, this is due to a typo in the code, the event name should be named "PropertyChanged", not "eventPropertyChanged". After you change this, it will compile fine.
About the other issue with the XAML, unfortunately I have no experience in this area to tell, maybe someone else can give some insight. It does appear to be a problem with x# though, since similar XAML works without errors in c#, so I will log this as a bug.
Chrs
About the compiler error, this is due to a typo in the code, the event name should be named "PropertyChanged", not "eventPropertyChanged". After you change this, it will compile fine.
About the other issue with the XAML, unfortunately I have no experience in this area to tell, maybe someone else can give some insight. It does appear to be a problem with x# though, since similar XAML works without errors in c#, so I will log this as a bug.
Chrs
Chris Pyrgas
XSharp Development Team
chris(at)xsharp.eu
XSharp Development Team
chris(at)xsharp.eu
-
- Posts: 248
- Joined: Fri Oct 14, 2016 7:09 am
WPF and X# 2.0.0.05
I had a look at the C# and xaml and that seems fine... afraid I haven't actually got X# installed at the moment, but it ought to work I think (especially as George says it works ok in C#).
Nick
Nick
WPF and X# 2.0.0.05
George,
Your local definition in the XAML is
xmlns:local="clr-namespace:Wpf_PropertyChanged"
but the namespace in which the class is defined is Wpf_XS
Change the local to
xmlns:local="clr-namespace:Wpf_XS"
and it works as expected
Robert
Your local definition in the XAML is
xmlns:local="clr-namespace:Wpf_PropertyChanged"
but the namespace in which the class is defined is Wpf_XS
Change the local to
xmlns:local="clr-namespace:Wpf_XS"
and it works as expected
Robert
XSharp Development Team
The Netherlands
robert@xsharp.eu
The Netherlands
robert@xsharp.eu
WPF and X# 2.0.0.05
Thank you Chris, Nick, Robert.
The worst mistakes are the 'copy/paste' ones!
Yes it works now.
Chris, you have to remove the ticket/log for the XAML.
regards
George
The worst mistakes are the 'copy/paste' ones!
Yes it works now.
Chris, you have to remove the ticket/log for the XAML.
regards
George
WPF and X# 2.0.0.05
I had not logged it yet, waited a little more, just in case somebody spotted an error in the codeGeorge wrote: Chris, you have to remove the ticket/log for the XAML.
So thanks to Robert for that, and also to Nick for stepping in to help!
Chris Pyrgas
XSharp Development Team
chris(at)xsharp.eu
XSharp Development Team
chris(at)xsharp.eu