| 
														
															@@ -4,6 +4,7 @@ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 using System.Linq; 
														 | 
														
														 | 
														
															 using System.Linq; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 using Avalonia.Controls.Presenters; 
														 | 
														
														 | 
														
															 using Avalonia.Controls.Presenters; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 using Avalonia.Controls.Templates; 
														 | 
														
														 | 
														
															 using Avalonia.Controls.Templates; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+using Avalonia.Data; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 using Avalonia.LogicalTree; 
														 | 
														
														 | 
														
															 using Avalonia.LogicalTree; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 using Avalonia.UnitTests; 
														 | 
														
														 | 
														
															 using Avalonia.UnitTests; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 using Avalonia.VisualTree; 
														 | 
														
														 | 
														
															 using Avalonia.VisualTree; 
														 | 
													
												
											
										
											
												
													
														 | 
														
															@@ -266,6 +267,31 @@ namespace Avalonia.Controls.UnitTests.Presenters 
														 | 
													
												
											
												
													
														| 
														 | 
														
															             Assert.IsType<Canvas>(target.Child); 
														 | 
														
														 | 
														
															             Assert.IsType<Canvas>(target.Child); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															         } 
														 | 
														
														 | 
														
															         } 
														 | 
													
												
											
												
													
														| 
														 | 
														
															  
														 | 
														
														 | 
														
															  
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        [Fact] 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        public void Should_Not_Bind_Old_Child_To_New_DataContext() 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+            // Test for issue #1099. 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+            var textBlock = new TextBlock 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+            { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                [!TextBlock.TextProperty] = new Binding(), 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+            }; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+            var (target, host) = CreateTarget(); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+            host.DataTemplates.Add(new FuncDataTemplate<string>(x => textBlock)); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+            host.DataTemplates.Add(new FuncDataTemplate<int>(x => new Canvas())); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+            target.Content = "foo"; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+            Assert.Same(textBlock, target.Child); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+            textBlock.PropertyChanged += (s, e) => 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+            { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                Assert.NotEqual(e.NewValue, "42"); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+            }; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+            target.Content = 42; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        } 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															         (ContentPresenter presenter, ContentControl templatedParent) CreateTarget() 
														 | 
														
														 | 
														
															         (ContentPresenter presenter, ContentControl templatedParent) CreateTarget() 
														 | 
													
												
											
												
													
														| 
														 | 
														
															         { 
														 | 
														
														 | 
														
															         { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															             var templatedParent = new ContentControl 
														 | 
														
														 | 
														
															             var templatedParent = new ContentControl 
														 | 
													
												
											
										
											
												
													
														 | 
														
															@@ -288,4 +314,4 @@ namespace Avalonia.Controls.UnitTests.Presenters 
														 | 
													
												
											
												
													
														| 
														 | 
														
															             public IControl Child { get; set; } 
														 | 
														
														 | 
														
															             public IControl Child { get; set; } 
														 | 
													
												
											
												
													
														| 
														 | 
														
															         } 
														 | 
														
														 | 
														
															         } 
														 | 
													
												
											
												
													
														| 
														 | 
														
															     } 
														 | 
														
														 | 
														
															     } 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-} 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+} 
														 |