คำถามติดแท็ก xaml

Extensible Application Markup Language (XAML) เป็นภาษาที่ใช้ XML ที่ประกาศใช้สำหรับการเริ่มต้นค่าโครงสร้างและวัตถุในกรอบต่าง ๆ เมื่อคำถามเกี่ยวกับการใช้งาน XAML ด้วยเฟรมเวิร์กเฉพาะควรมีการระบุแท็กสำหรับเฟรมเวิร์กเช่น [wpf] (มูลนิธิการนำเสนอของ Windows), [Silverlight], [windows-phone], [windows-store-apps] ( แอพ Windows 8 store), [win-universal-app], [xamarin.forms] หรือ [workflow-foundation]

7
ผูกกับวิธีการใน WPF หรือไม่
คุณผูกกับเมธอดอ็อบเจ็กต์ในสถานการณ์นี้ใน WPF ได้อย่างไร public class RootObject { public string Name { get; } public ObservableCollection<ChildObject> GetChildren() {...} } public class ChildObject { public string Name { get; } } XAML: <TreeView ItemsSource="some list of RootObjects"> <TreeView.Resources> <HierarchicalDataTemplate DataType="{x:Type data:RootObject}" ItemsSource="???"> <TextBlock Text="{Binding Path=Name}" /> </HierarchicalDataTemplate> <HierarchicalDataTemplate DataType="{x:Type data:ChildObject}"> <TextBlock Text="{Binding …
90 .net  wpf  data-binding  xaml 

13
จะรับขนาดของหน้าจอปัจจุบันใน WPF ได้อย่างไร?
ฉันรู้ว่าฉันสามารถรับขนาดของหน้าจอหลักได้โดยใช้ไฟล์ System.Windows.SystemParameters.PrimaryScreenWidth; System.Windows.SystemParameters.PrimaryScreenHeight; แต่ฉันจะได้ขนาดของหน้าจอปัจจุบันได้อย่างไร? (ผู้ใช้หลายหน้าจอไม่ได้ใช้หน้าจอหลักเสมอไปและไม่ใช่ว่าทุกหน้าจอจะใช้ความละเอียดเดียวกันใช่ไหม) จะเป็นการดีที่สามารถรับขนาดจาก XAML ได้ แต่การทำเช่นนั้นจากรหัส (C #) ก็เพียงพอแล้ว
90 c#  wpf  xaml  size  screen 


10
วิธีปรับขนาดอัตโนมัติและจัดแนวข้อมูล GridViewColumn ใน WPF โดยอัตโนมัติ
ฉันสามารถ: จัดข้อความให้ชิดขวาในคอลัมน์ ID ทำให้แต่ละคอลัมน์มีขนาดอัตโนมัติตามความยาวข้อความของเซลล์ด้วยข้อมูลที่มองเห็นได้นานที่สุด? นี่คือรหัส: <ListView Name="lstCustomers" ItemsSource="{Binding Path=Collection}"> <ListView.View> <GridView> <GridViewColumn Header="ID" DisplayMemberBinding="{Binding Id}" Width="40"/> <GridViewColumn Header="First Name" DisplayMemberBinding="{Binding FirstName}" Width="100" /> <GridViewColumn Header="Last Name" DisplayMemberBinding="{Binding LastName}"/> </GridView> </ListView.View> </ListView> คำตอบบางส่วน: ขอบคุณ Kjetil GridViewColumn.CellTemplate ทำงานได้ดีและความกว้างอัตโนมัติทำงานได้แน่นอน แต่เมื่อ "Collection" ของ ObservativeCollection ได้รับการอัปเดตด้วยข้อมูลที่มีความยาวมากกว่าคอลัมน์ขนาดคอลัมน์จะไม่อัปเดตตัวเองดังนั้นจึงเป็นเพียงวิธีแก้ปัญหาสำหรับ การแสดงข้อมูลเบื้องต้น: <ListView Name="lstCustomers" ItemsSource="{Binding Path=Collection}"> <ListView.View> <GridView> <GridViewColumn Header="ID" …

9
Application.DoEvents () ใน WPF อยู่ที่ไหน
ฉันมีโค้ดตัวอย่างต่อไปนี้ที่ซูมทุกครั้งที่กดปุ่ม: XAML: <Window x:Class="WpfApplication12.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"> <Canvas x:Name="myCanvas"> <Canvas.LayoutTransform> <ScaleTransform x:Name="myScaleTransform" /> </Canvas.LayoutTransform> <Button Content="Button" Name="myButton" Canvas.Left="50" Canvas.Top="50" Click="myButton_Click" /> </Canvas> </Window> * .cs public partial class MainWindow : Window { public MainWindow() { InitializeComponent(); } private void myButton_Click(object sender, RoutedEventArgs e) { Console.WriteLine("scale {0}, location: {1}", …
89 c#  .net  wpf  xaml 

9
การรวม OneWayToSource จากคุณสมบัติแบบอ่านอย่างเดียวใน XAML
Наэтотвопросестьответына Stack Overflow нарусском : Binding ActualHeight и ActualWidth контролавсвойство ViewModel ฉันพยายามเชื่อมโยงกับReadonlyคุณสมบัติด้วยOneWayToSourceas mode แต่ดูเหมือนว่าจะไม่สามารถทำได้ใน XAML: <controls:FlagThingy IsModified="{Binding FlagIsModified, ElementName=container, Mode=OneWayToSource}" /> ฉันเข้าใจ: ไม่สามารถตั้งค่าคุณสมบัติ 'FlagThingy.IsModified' เนื่องจากไม่มีตัวเข้าถึงชุดที่สามารถเข้าถึงได้ IsModifiedคืออ่านได้อย่างเดียวบนDependencyProperty FlagThingyฉันต้องการผูกค่านั้นกับFlagIsModifiedคุณสมบัติบนคอนเทนเนอร์ ต้องมีความชัดเจน: FlagThingy.IsModified --> container.FlagIsModified ------ READONLY ----- ----- READWRITE -------- เป็นไปได้ไหมโดยใช้ XAML อัปเดต:ฉันแก้ไขกรณีนี้โดยตั้งค่าการผูกบนคอนเทนเนอร์ไม่ใช่ในไฟล์FlagThingy. แต่ฉันยังอยากรู้ว่าเป็นไปได้ไหม

10
วิธีเพิ่มพฤติกรรมผสมผสานใน Style Setter
ฉันได้เสนอพฤติกรรมการผสมผสานสำหรับปุ่ม ฉันจะตั้งค่าให้เป็นปุ่มทั้งหมดในแอปได้อย่างไร <Button ...> <i:Interaction.Behaviors> <local:MyBehavior /> </i:Interaction.Behaviors> </Button> อย่างไรก็ตามเมื่อฉันลอง: <Style> <Setter Property="i:Interaction.Behaviors"> <Setter.Value> <local:MyBehavior /> </Setter.Value> </Setter> </Style> ฉันได้รับข้อผิดพลาด คุณสมบัติ "Behaviors" ไม่มีตัวตั้งค่าที่สามารถเข้าถึงได้

15
WPF CommandParameter เป็น NULL ครั้งแรกที่เรียก CanExecute
ฉันพบปัญหาเกี่ยวกับ WPF และคำสั่งที่ผูกไว้กับปุ่มภายใน DataTemplate ของ ItemsControl สถานการณ์ค่อนข้างตรงไปตรงมา ItemsControl ถูกผูกไว้กับรายการของวัตถุและฉันต้องการที่จะสามารถลบแต่ละวัตถุในรายการได้โดยคลิกที่ปุ่ม ปุ่มเรียกใช้คำสั่งและคำสั่งจะดูแลการลบ CommandParameter ถูกผูกไว้กับ Object ที่ฉันต้องการลบ ด้วยวิธีนี้ฉันรู้ว่าผู้ใช้คลิกอะไร ผู้ใช้ควรจะลบอ็อบเจกต์ "ของตัวเอง" ได้เท่านั้นดังนั้นฉันจึงต้องทำการตรวจสอบบางอย่างในการเรียก "CanExecute" ของ Command เพื่อตรวจสอบว่าผู้ใช้มีสิทธิ์ที่ถูกต้อง ปัญหาคือพารามิเตอร์ที่ส่งไปยัง CanExecute เป็น NULL ในครั้งแรกที่เรียก - ดังนั้นฉันจึงไม่สามารถเรียกใช้ตรรกะเพื่อเปิด / ปิดคำสั่งได้ อย่างไรก็ตามหากฉันเปิดใช้งานทุกอย่างแล้วคลิกปุ่มเพื่อดำเนินการคำสั่ง CommandParameter จะถูกส่งผ่านอย่างถูกต้อง นั่นหมายความว่าการผูกกับ CommandParameter กำลังทำงาน XAML สำหรับ ItemsControl และ DataTemplate มีลักษณะดังนี้: <ItemsControl x:Name="commentsList" ItemsSource="{Binding Path=SharedDataItemPM.Comments}" Width="Auto" Height="Auto"> <ItemsControl.ItemTemplate> …


7
ค้นหาคุณสมบัติ Source ของ WebBrowser ใน WPF
ไม่มีใครรู้วิธีการหาฐานข้อมูลคุณสมบัติ. Source ของ WebBrowser ใน WPF (3.5SP1)? ฉันมี listview ที่ฉันต้องการมีเว็บเบราว์เซอร์ขนาดเล็กทางด้านซ้ายและเนื้อหาทางด้านขวาและเพื่อค้นหาแหล่งที่มาของเว็บเบราว์เซอร์แต่ละรายการด้วย URI ในแต่ละวัตถุที่เชื่อมโยงกับรายการ นี่คือสิ่งที่ฉันมีเป็นหลักฐานยืนยันถึงแนวคิด แต่ " <WebBrowser Source="{Binding Path=WebAddress}"" ไม่ได้รวบรวม <DataTemplate x:Key="dealerLocatorLayout" DataType="DealerLocatorAddress"> <StackPanel Orientation="Horizontal"> <!--Web Control Here--> <WebBrowser Source="{Binding Path=WebAddress}" ScrollViewer.HorizontalScrollBarVisibility="Disabled" ScrollViewer.VerticalScrollBarVisibility="Disabled" Width="300" Height="200" /> <StackPanel Orientation="Vertical"> <StackPanel Orientation="Horizontal"> <Label Content="{Binding Path=CompanyName}" FontWeight="Bold" Foreground="Blue" /> <TextBox Text="{Binding Path=DisplayName}" FontWeight="Bold" /> …
86 c#  wpf  xaml  data-binding  browser 

7
WPF ListView: การแนบเหตุการณ์ดับเบิลคลิก (บนรายการ)
ฉันมีสิ่งต่อไปนี้ListView: <ListView Name="TrackListView"> <ListView.View> <GridView> <GridViewColumn Header="Title" Width="100" HeaderTemplate="{StaticResource BlueHeader}" DisplayMemberBinding="{Binding Name}"/> <GridViewColumn Header="Artist" Width="100" HeaderTemplate="{StaticResource BlueHeader}" DisplayMemberBinding="{Binding Album.Artist.Name}" /> </GridView> </ListView.View> </ListView> ฉันจะแนบเหตุการณ์กับทุกรายการที่ถูกผูกไว้ซึ่งจะเริ่มทำงานเมื่อดับเบิลคลิกที่รายการนั้นได้อย่างไร
85 c#  wpf  xaml 

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.