Search Results

Search found 11377 results on 456 pages for 'wpf resource'.

Page 188/456 | < Previous Page | 184 185 186 187 188 189 190 191 192 193 194 195  | Next Page >

  • Update source with TemplateBinding

    - by Polaris
    I use this style for all my labels <Style TargetType="Label" x:Key="LabelStyle"> <Setter Property="Template"> <Setter.Value> <ControlTemplate TargetType="Label"> <StackPanel Orientation="Horizontal" > <TextBox Loaded="MyTextBlock_Loaded" x:Name="EditControl" Visibility="Collapsed" Text="{TemplateBinding Tag}" /> <Label Content="{TemplateBinding Content}" Grid.Column="1" Grid.Row="1"> </Label> </StackPanel> </ControlTemplate> </Setter.Value> </Setter> </Style> and my sample label <Label Grid.Column="0" Grid.Row="0" Content="Photo" Style="{StaticResource LabelStyle}" Tag="{Binding fieldsCode.firstName, UpdateSourceTrigger=PropertyChanged}"/> But I feel that TemplateBiding doesn't support update of property. How can solve this issue

    Read the article

  • Get a button in itemscontrol and add eventhandler to its click event

    - by rockdale
    I have a custom control shows a customer info with an itemscontrol shows this customer's invoices. within the itemscontrol, I have button, in my code behind I want to wire the button's click event to my host window, but do now know how. //public event RoutedEventHandler ViewDetailClick; public static readonly RoutedEvent ButtonViewClickEvent = EventManager.RegisterRoutedEvent( "ButtonViewClick", RoutingStrategy.Bubble, typeof(RoutedEventHandler), typeof(custitem)); public event RoutedEventHandler ButtonViewClick { add { AddHandler(ButtonViewClickEvent, value); } remove {RemoveHandler(ButtonViewClickEvent, value);} } public override void OnApplyTemplate() { base.OnApplyTemplate(); this.lstInv = GetTemplateChild("lstInv") as ItemsControl; lstInv.ItemContainerGenerator.StatusChanged += new EventHandler(ItemContainerGenerator_StatusChanged); } private void ItemContainerGenerator_StatusChanged(object sender, EventArgs e) { if (lstInv.ItemContainerGenerator.Status == System.Windows.Controls.Primitives.GeneratorStatus.ContainersGenerated) { lstInv.ItemContainerGenerator.StatusChanged -= ItemContainerGenerator_StatusChanged; for (int i = 0; i < this.lstInv.Items.Count; i++) { ContentPresenter c = lstInv.ItemContainerGenerator.ContainerFromItem(lstInv.Items[i]) as ContentPresenter; DataTemplate dt = c.ContentTemplate; Grid grd = dt.LoadContent() as Grid; Button btnView = grd.FindName("btnView") as Button; if (btnView != null) { btnView.Click += new RoutedEventHandler(ButtonView_Click); //btnView.Click+= delegate(object senderObj, RoutedEventArgs eArg) //{ // if (this.ViewDetailClick != null) // { // this.ViewDetailClick(this, eArg); // } //}; } } private void ButtonView_Click(object sender, RoutedEventArgs e) { MessageBox.Show("clicked"); //e.RoutedEvent = ButtonViewClickEvent; //e.Source = sender; //RaiseEvent(e); } I succeed getting the btnView, then attach the click event, but the click event never get fired. Thanks in advance -rockdale

    Read the article

  • How to keep a local value from being set when a binding fails (so inherited values will propagate)

    - by redoced
    Consider the following scenario: I want to bind the TextElement.FontWeight property to an xml attribute. The xml looks somewhat like this and has arbitrary depth. <text font-weight="bold"> bold text here <inlinetext>more bold text</inlinetext> even more bold text </text> I use hierarchical templating to display the text, no problem there, but having a Setter in the template style like: <Setter Property="TextElement.FontWeight" Value="{Binding XPath=@font-weight}"/> sets the fontweight correctly on the first level, but overwrites the second level with null (as the binding can't find the xpath) which reverts to Fontweight normal. I tried all sorts of things here but nothing quite seems to work. e.g. i used a converter to return UnsetValue, which didn't work. I'm currently trying with: <Setter Property="custom:AttributeInserter.Wrapper" Value="{custom:AttributeInserter Property=TextElement.FontWeight, Binding={Binding XPath=@font-weight}}"/> Codebehind: public static class AttributeInserter { public static AttributeInserterExtension GetWrapper(DependencyObject obj) { return (AttributeInserterExtension)obj.GetValue(WrapperProperty); } public static void SetWrapper(DependencyObject obj, AttributeInserterExtension value) { obj.SetValue(WrapperProperty, value); } // Using a DependencyProperty as the backing store for Wrapper. This enables animation, styling, binding, etc... public static readonly DependencyProperty WrapperProperty = DependencyProperty.RegisterAttached("Wrapper", typeof(AttributeInserterExtension), typeof(AttributeInserter), new UIPropertyMetadata(pcc)); static void pcc(DependencyObject o,DependencyPropertyChangedEventArgs e) { var n=e.NewValue as AttributeInserterExtension; var c = o as FrameworkElement; if (n == null || c==null || n.Property==null || n.Binding==null) return; var bex = c.SetBinding(n.Property, n.Binding); bex.UpdateTarget(); if (bex.Status == BindingStatus.UpdateTargetError) c.ClearValue(n.Property); } } public class AttributeInserterExtension : MarkupExtension { public override object ProvideValue(IServiceProvider serviceProvider) { return this; } public DependencyProperty Property { get; set; } public Binding Binding { get; set; } } which kinda works, but can't track changes of the property Any ideas? Any links? thx for the help

    Read the article

  • MVVM Listbox DataTemplate SelectedItem

    - by StinkerPeter
    I am using a ListBox with a DataTemplate as shown below (xaml simplified and variable names changed). <ListBox ItemsSource="{Binding Path=ObservCollectionItems}" SelectedItem="{Binding Path=SelectedItemVar, Mode=TwoWay}"> <ListBox.ItemTemplate> <DataTemplate> <StackPanel> <TextBlock Text="{Binding SomeVar}" /> <Border> <StackPanel> <Button Content="String1" Command="{Binding DataContext.Command1} RelativeSource={RelativeSource FindAncestor, ListBox, 1}}" /> <Button Content="String2" Command="{Binding DataContext.Command2} RelativeSource={RelativeSource FindAncestor, ListBox, 1}}" /> </StackPanel> </Border> </StackPanel> </DataTemplate> <ListBox.ItemTemplate> </ListBox> I need the SelectedItemVar (dependency property) to update when I click on one of the buttons. SelectedItemVar is then used for the respective button's command. SelectedItemVar does update when I click on the TextBlock or the Border, but not when I click either button. I found a non-MVVM solution to this problem here. I do not want to add code in the file-behind to solve this, as they did in the link. Is there a clean solution that can be done in XAML. Beyond the non-MVVM solutions, I have not found anyone with this problem. I would have thought this was fairly common. Finally, I found this Command="{Binding DataContext.CommandName} RelativeSource={RelativeSource FindAncestor, ListBox, 1} for the Command binding. I do not fully understand what it is doing, but I do know that the command wasn't firing when I was binding directly to CommandName.

    Read the article

  • binding a command inside a listbox item to a property on the viewmodel parent

    - by gideon
    I've been working on this for about an hour and looked at all related SO questions. My problem is very simple: I have HomePageVieModel: HomePageVieModel +IList<NewsItem> AllNewsItems +ICommand OpenNews My markup: <Window DataContext="{Binding HomePageViewModel../> <ListBox ItemsSource="{Binding Path=AllNewsItems}"> <ListBox.ItemTemplate> <DataTemplate> <StackPanel> <TextBlock> <Hyperlink Command="{Binding Path=OpenNews}"> <TextBlock Text="{Binding Path=NewsContent}" /> </Hyperlink> </TextBlock> </StackPanel> </DataTemplate> </ListBox.ItemTemplate> The list shows fine with all the items, but for the life of me whatever I try for the Command won't work: <Hyperlink Command="{Binding Path=OpenNewsItem, RelativeSource={RelativeSource AncestorType=vm:HomePageViewModel, AncestorLevel=1}}"> <Hyperlink Command="{Binding Path=OpenNewsItem, RelativeSource={RelativeSource AncestorType=vm:HomePageViewModel,**Mode=FindAncestor}**}"> <Hyperlink Command="{Binding Path=OpenNewsItem, RelativeSource={RelativeSource AncestorType=vm:HomePageViewModel,**Mode=TemplatedParent}**}"> I just always get : System.Windows.Data Error: 4 : Cannot find source for binding with reference ..... Update I am setting my ViewModel like this? Didn't think this would matter: <Window.DataContext> <Binding Path="HomePage" Source="{StaticResource Locator}"/> </Window.DataContext> I use the ViewModelLocator class from the MVVMLight toolkit which does the magic.

    Read the article

  • Swapping data binding in code

    - by Phil J Pearson
    I have two data-bound text boxes. One is bound to a string and the other to a number. The 'default' binding is set in XAML. Under some circumstances I need to reverse the bindings at runtime (the string is usually a prefix but sometimes it's a suffix). I have the following code in my view model, called when the window is loaded: Binding stringBinding = BindingOperations.GetBinding(view.seqLeft, TextBox.TextProperty); Binding numberBinding = BindingOperations.GetBinding(view.seqRight, TextBox.TextProperty); view.seqLeft.SetBinding(TextBlock.TextProperty, numberBinding); view.seqRight.SetBinding(TextBlock.TextProperty, stringBinding); After that the code loads the properties to which the binding refers. The problem is that the 'new' binding doesn't seem to work. What have I missed? Is there a better way?

    Read the article

  • Dynamic filling WrapPanel buttons from DB, setting the event handlers

    - by Anry
    I have a table: I'm using NHibernate. The class of entity: public class PurchasedItem { public virtual int Id { get; set; } public virtual Product Product { get; set; } public virtual int SortSale { get; set; } } I want to get all the records table PurchasedItems (my method returns an IList ). Records are sorted in descending order (column SortSale). How to fill WrapPanel buttons from the list IList ? For each button assign the event handler. By pressing the button display a message with the name of the product.

    Read the article

  • How create processing events for array of TextBox

    - by ScarX
    I create array: TextBox[] textarray = new TextBox[100]; Then in cycle set this params, all items array situated in uniformGrid1 textarray[i] = new TextBox(); textarray[i].Height = 30; textarray[i].Width = 50; uniformGrid1.Children.Add(textarray[i]); How create events Click or DoubleClick that all items array? Sorry my English.

    Read the article

  • MVVM- View Model-View Model Communications

    - by user275561
    How do I go about having two view models communicate with one another using MVVM Light. I know how to use the messenger class and register etc.. Here is my Scenario A Settings View ---> a Settings View Model . . . A MainPage View ---> A MainPage ViewModel If something changes in the Settings View it will Message back to the Settings View Model. So then I want the Settings View Model to communicate to the MainPage View Model about what changed. THe MainPage ViewModel will then tell the View.

    Read the article

  • How can I bind another DependencyProperty to the IsChecked Property of a CheckBox?

    - by speedmetal
    Here's an example of what I'm trying to accomplish: <Window x:Class="CheckBoxBinding.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Title="MainWindow" Height="350" Width="525"> <StackPanel> <CheckBox Name="myCheckBox">this</CheckBox> <Grid> <Grid.Resources> <Style TargetType="ListBox"> <Style.Triggers> <Trigger Property="{Binding ElementName=myCheckBox, Path=IsChecked}" Value="True"> <Setter Property="Background" Value="Red" /> </Trigger> </Style.Triggers> </Style> </Grid.Resources> <ListBox> <ListBoxItem>item</ListBoxItem> <ListBoxItem>another</ListBoxItem> </ListBox> </Grid> </StackPanel> </Window> When I try to run it, I get this XamlParseException: A 'Binding' cannot be set on the 'Property' property of type 'Trigger'. A 'Binding' can only be set on a DependencyProperty of a DependencyObject. So how can I bind a property on the ListBox to the IsChecked property of a CheckBox?

    Read the article

  • Returning objects from another thread?

    - by Mark
    Trying to follow the hints laid out here, but she doesn't mention how to handle it when your collection needs to return a value, like so: private delegate TValue DequeueHandler(); public virtual TValue Dequeue() { if (dispatcher.CheckAccess()) { --count; var pair = dict.First(); var queue = pair.Value; var val = queue.Dequeue(); if (queue.Count == 0) dict.Remove(pair.Key); OnCollectionChanged(new NotifyCollectionChangedEventArgs(NotifyCollectionChangedAction.Remove, val)); return val; } else { dispatcher.BeginInvoke(new DequeueHandler(Dequeue)); } } This obviously won't work, because dispatcher.BeginInvoke doesn't return anything. What am I supposed to do? Or maybe I could replace dequeue with two functions, Peek and Pop, where Peek doesn't really need to be on the UI thread because it doesn't modify anything, right? As a side question, these methods don't need to be "locked" either, do they? If they're all forced to run in the UI thread, then there shouldn't be any concurrency issues, right?

    Read the article

  • Hierarchy as grid

    - by seesharp
    I have hierarchy: public class Parameter { public string Name { get; set; } public Value Value { get; set; } } public abstract class Value { } public class StringValue : Value { public string Str { get; set; } } public class ComplexValue : Value { public ComplexValue() { Parameters = new List<Parameter>(); } public List<Parameter> Parameters { get; set; } } /// Contains ComplexValue public class ComplexParameter : Parameter { } And XAML with templates <Window.Resources> <DataTemplate DataType="{x:Type pc:Parameter}"> <Grid> <Grid.ColumnDefinitions> <ColumnDefinition/> <ColumnDefinition/> </Grid.ColumnDefinitions> <Label Grid.Column="0" Content="{Binding Name}"/> <ContentPresenter Grid.Column="1" Content="{Binding Value}"/> </Grid> </DataTemplate> <DataTemplate DataType="{x:Type pc:ComplexParameter}"> <StackPanel> <Label Content="{Binding Name}"/> <ContentControl Margin="18,0,0,0" Content="{Binding Value}"/> </StackPanel> </DataTemplate> <DataTemplate DataType="{x:Type pc:ComplexValue}"> <ItemsControl ItemsSource="{Binding Parameters}"/> </DataTemplate> <DataTemplate DataType="{x:Type pc:StringValue}"> <TextBox Text="{Binding Str}"/> </DataTemplate> </Window.Resources> This look like: Param1 -Control---- Param2 -Control---- Complex1 Sub Param1 -Control- Sub Param2 -Control- Or image here: freeimagehosting.net/uploads/9d438f52e7.png Question How to do indent only in left column (parameter names). Something like this: Param1 -Control---- Param2 -Control---- Complex1 Sub Param1 -Control---- Sub Param2 -Control---- Or image here: freeimagehosting.net/uploads/4ab3045b75.png

    Read the article

  • How can I use a PathGeometry as a mask for a BitmapSource (or any image data)?

    - by Jedidja
    Assuming I have a BitmapSource (actually I have access to the raw pixels as well if necessary), how can I use a PathGeometry as a mask to cut out certain parts of the image? 01234567890123456789 0 -------------------- 1 | + + | 2 | * | 3 | * ) | 4 | * | 5 | ( | 6 -------------------- Assuming I have a PathGeometry that describes a rectangle that goes from (0, 0) to (8, 3), I would like to be able to get one of the following two images: 01234567890123456789 0 -------------------- 1 | + | 2 | * | 3 | | 4 | | 5 | | 6 -------------------- or 012345678 0 --------- 1 | + | 2 | *| 3 ---------

    Read the article

  • How to bind the Command property of the ItemTemplate CheckBox to ViewModel object's property?

    - by 123Developer
    Let me ask this question with a pseudo code: Where "Contacts" the ViewModel object set as the DataContext for the window. "Contacts" has "PersonCollection" , public ICommand PersonSelectedCommand properties. "PersonCollection" is List "Person" has Name, Age properties Currently this is not working as CheckBox is trying to find and bind the ICommand "PersonSelectedCommand" property of object "person", which does not exists! How will bind the CheckBox to the ICommand "PersonSelectedCommand" property of object "Contact" Thanks and regards 123Deveopler

    Read the article

  • Adding events to ScatterViewItems when implicitly creating them

    - by James Hay
    Not sure there's too many surface developers on here but hey ho... If i have a scatterview which implicity creates the ScatterViewItem objects (see below), is it possible to retireve the contact events for each scatterViewItem? Also when i wrap tyhe image object in a ScatterViewItem explicitly the item no longer works. Could anyone advise as to why this is the case? <s:ScatterView ItemsSource="{StaticResource DummyData}" > <s:ScatterView.ItemTemplate> <DataTemplate> <Image Source="{Binding Path=ImagePath}" /> </DataTemplate> </s:ScatterView.ItemTemplate> </s:ScatterView>

    Read the article

  • Why is generated XAML spitting out namespaces that are not asked for?

    - by Matt Holmes
    I have a very simple XAML form, that has one namespace definition. For some reason, when Visual Studio processes that XAML file in to it's component .g.cs, it's sticking a bunch of namespace definitions at the top that I have not asked for in the XAML, or the code behind, and they are namespaces that no longer exist in my project. Thus the project is failing to compile. Why is Visual Studio sticking arbitrary namespace 'using' statements in my generated XAML .g.cs files? It's caused my entire project to break. Not one time did this .xaml file ever reference the namespaces in question, so it's doubly annoying.

    Read the article

  • Can I have two different Styles in a CustomControl

    - by Subhen
    Hi, Can we have two different styles in generic.xaml setter template Property Something like: <Setter Property="Template"> <Setter.Value> <ControlTemplate TargetType="local:customLocalFolderButton"> **<----Style 1---->** </ControlTemplate TargetType="local:customLocalFolderButton"> </Setter.Value> <Setter.Value> <ControlTemplate TargetType="local:customLocalFolderButton"> **<----Style 2---->** </ControlTemplate TargetType="local:customLocalFolderButton"> </Setter.Value> </Setter> Now I want to load the styles , as per the requirement. The 1st Style Can have a Red Folder and the Second Style Can have Blue Folder . The user can choose any of the theme and the choosen style(Either RedFolder or Blue) should be applied in the customControl it self. Thanks, Subhen

    Read the article

  • RectangleGeometry with relative dimensions... how?

    - by Padu Merloti
    I'm trying to replicate the nowadays so fashionable "reflex" effect on a controltemplate for buttons I'm creating. The basic idea is to create a rectangle with a gradient fill from white to transparent and then clip some of that semi-transparent rectangle with a rectanglegeometry. The problem is that I don't know how to define a relative rectangle geometry. I kind of worked around width by defining a large value (1000), but height is a problem. For example, it works good for buttons that have a 200 height, but doesn't do anything for smaller buttons. Any ideas? <Rectangle RadiusX="5" RadiusY="5" StrokeThickness="1" Stroke="Transparent"> <Rectangle.Fill> <LinearGradientBrush StartPoint="0,0" EndPoint="0,0.55"> <GradientStop Color="#66ffffff" Offset="0.0" /> <GradientStop Color="Transparent" Offset="1.0" /> </LinearGradientBrush> </Rectangle.Fill> <Rectangle.Clip> <RectangleGeometry Rect="0,0,1000,60" /> </Rectangle.Clip> </Rectangle>

    Read the article

  • How to give the condition for EventTrigger?

    - by Prabu
    Is it possible to give the condition within the EventTrigger?? I have written a following EventTrigger (Mouse.MouseLeave) for Radio button. I want this should not be trigged for an item which is in Checked condition (IsChecked=True). <EventTrigger RoutedEvent="Mouse.MouseLeave" SourceName="border"> <BeginStoryboard Name="out_BeginStoryboard" Storyboard="{StaticResource out}" /> <RemoveStoryboard BeginStoryboardName="over_BeginStoryboard" /> </EventTrigger> Please let me know how can I achieve this? Thanks in advance.

    Read the article

  • Get the Grid data in ColumnHeaderClick

    - by plotnick
    Sorrry guys, I'm stuck here. I have a few grids, I also have CollectionViewSource objects associated with those grids. Now, I'm trying to apply CollectionViewSource.SortDescriptions in ColumnHeaderClick method, and now I have to define almost the same method for each grid. But the only thing I really need is to obtain in which Grid is happenning. How to get that, I have no idea. Help me please. VisualTreeHelper.GetParent didn't work.

    Read the article

  • IE7 not Caching CSS Image over SSL

    - by Alex
    Hello, I'm using the WebDevHelper toolbar for Internet Explorer to troubleshoot HTTP requests/roundtrips on my SSL site and noticed that IE re-downloads my CSS :hover images every time they are triggered. This causes a huge amount of roundtrips. How can I prevent this from happening? Edit: All static content is served with cache-control: public, so images, javascript etc. are cached in Firefox and Chrome. This problem is IE specific.

    Read the article

  • Problem adding Viewport2DVisual3D from Code

    - by Jeff
    I'm trying to add a Viewport2DVisual3D to a Viewport3D in code, but the visual isn't showing up. Any help understanding why not would be appreciated. The following is the code for the main window. Is it sufficient to just add the Viewport2DVisual3D to the children of the Viewport3D in order for it to be rendered? public partial class Window1 : System.Windows.Window { public Window1() { InitializeComponent(); this.Loaded += new RoutedEventHandler(temp); } public void temp(object sender, RoutedEventArgs e) { Viewport2DVisual3D test = new Viewport2DVisual3D(); MeshGeometry3D testGeometry = new MeshGeometry3D(); Vector3D CameraLookDirection = Main_Target_CameraOR20.LookDirection; // Calculate the Positions based on the Camera Point3DCollection myPoint3DCollection = new Point3DCollection(); myPoint3DCollection.Add(new Point3D(-1, 1, 0)); myPoint3DCollection.Add(new Point3D(-1, -1, 0)); myPoint3DCollection.Add(new Point3D(1, -1, 0)); myPoint3DCollection.Add(new Point3D(1, 1, 0)); testGeometry.Positions = myPoint3DCollection; PointCollection myPointCollection = new PointCollection(); myPointCollection.Add(new Point(0, 0)); myPointCollection.Add(new Point(0, 1)); myPointCollection.Add(new Point(1, 1)); myPointCollection.Add(new Point(1, 0)); testGeometry.TextureCoordinates = myPointCollection; Int32Collection triangleIndicesCollection = new Int32Collection(); triangleIndicesCollection.Add(0); triangleIndicesCollection.Add(1); triangleIndicesCollection.Add(2); triangleIndicesCollection.Add(2); triangleIndicesCollection.Add(3); triangleIndicesCollection.Add(0); testGeometry.TriangleIndices = triangleIndicesCollection; DiffuseMaterial myDiffuseMaterial = new DiffuseMaterial(Brushes.White); Viewport2DVisual3D.SetIsVisualHostMaterial(myDiffuseMaterial, true); Transform3DGroup myTransform3DGroup = new Transform3DGroup(); ScaleTransform3D myScaleTransform3D = new ScaleTransform3D(); myScaleTransform3D.ScaleX = 2; myScaleTransform3D.ScaleY = 2; myScaleTransform3D.ScaleZ = 2; TranslateTransform3D myTranslateTransform3D = new TranslateTransform3D(); myTranslateTransform3D.OffsetX = -27; myTranslateTransform3D.OffsetY = 13; myTranslateTransform3D.OffsetZ = 6; RotateTransform3D rotateTransform = new RotateTransform3D() { Rotation = new AxisAngleRotation3D { Angle = -50, Axis = new Vector3D(0, 1, 0) } }; myTransform3DGroup.Children.Add(myTranslateTransform3D); myTransform3DGroup.Children.Add(myScaleTransform3D); myTransform3DGroup.Children.Add(rotateTransform); test.Transform = myTransform3DGroup; Button myButton = new Button(); myButton.Content = "Test Button"; test.Material = myDiffuseMaterial; test.Geometry = testGeometry; test.Visual = myButton; ZAM3DViewport3D.Children.Add(test); } }

    Read the article

  • ValueConverter not being invoked in DataTemplate binding

    - by unforgiven3
    I have a ComboBox that uses a DataTemplate. The DataTemplate contains a binding which uses an IValueConverter to convert an enumerated value into a string. The problem is that the value converter is never invoked. This is my XAML: <ComboBox ItemsSource="{Binding Path=StatusChoices, Mode=OneWay}"> <ComboBox.ItemTemplate> <DataTemplate> <TextBlock Text="{Binding Converter={StaticResource StatusToTextConverter}}"/> </DataTemplate> </ComboBox.ItemTemplate> </ComboBox> Is my binding not correct? I thought this is how one implicitly binds to the value a DataTemplate is presenting. Am I wrong?

    Read the article

  • Why doesn't this data binding work?

    - by Qwertie
    I have a ViewModel class that contains a list of points, and I am trying to bind it to a Polyline. The Polyline picks up the initial list of points, but does not notice when additional points are added even though I implement INotifyPropertyChanged. What's wrong? <StackPanel> <Button Click="Button_Click">Add!</Button> <Polyline x:Name="_line" Points="{Binding Pts}" Stroke="Black" StrokeThickness="5"/> </StackPanel> C# side: // code-behind _line.DataContext = new ViewModel(); private void Button_Click(object sender, RoutedEventArgs e) { // The problem is here: NOTHING HAPPENS ON-SCREEN! ((ViewModel)_line.DataContext).AddPoint(); } // ViewModel class public class ViewModel : INotifyPropertyChanged { public event PropertyChangedEventHandler PropertyChanged; public PointCollection Pts { get; set; } public ViewModel() { Pts = new PointCollection(); Pts.Add(new Point(1, 1)); Pts.Add(new Point(11, 11)); } public void AddPoint() { Pts.Add(new Point(25, 13)); if (PropertyChanged != null) PropertyChanged(this, new PropertyChangedEventArgs("Pts")); } }

    Read the article

< Previous Page | 184 185 186 187 188 189 190 191 192 193 194 195  | Next Page >