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

Windows Presentation Foundation หรือ WPF เป็นระบบย่อยสำหรับการแสดงผลส่วนต่อประสานกับผู้ใช้ในแอพพลิเคชั่นที่ทำงานบน Windows


17
“ การรวบรวมรายการจะต้องว่างเปล่าก่อนที่จะใช้ ItemsSource”
ฉันพยายามที่จะได้รับภาพที่จะแสดงผลใน WPF ListView สไตล์เช่น WrapPanel ที่อธิบายไว้ในบทความเก่า ATC รีสอร์ตทีมนี้: วิธีการสร้างมุมมองที่กำหนดเอง เมื่อฉันพยายามที่จะเติม ListView ด้วยคอลเลกชันสอบถาม LINQ-to-Entities ของวัตถุ ADO.NET Entity Framework ฉันได้รับข้อยกเว้นดังต่อไปนี้: ข้อยกเว้น การรวบรวมรายการจะต้องว่างเปล่าก่อนที่จะใช้ ItemsSource รหัสของฉัน ... Visual Basic Private Sub Window1_Loaded(...) Handles MyBase.Loaded ListViewImages.ItemsSource = From g In db.Graphic _ Order By g.DateAdded Ascending _ Select g End Sub XAML <ListView Name="ListViewImages" SelectionMode="Single" …


3
การตัดข้อความ WPF กับ WrapWithOverflow
อะไรคือ "ความคิด" ที่แตกต่างระหว่างTextWrapping="Wrap"และTextWrapping="WrapWithOverflow"(เช่นสำหรับกล่องข้อความ)? ในหน้า MSDN เกี่ยวกับกล่องข้อความของชั้นเรียนไม่มีอะไร ... ขอบคุณ
170 wpf  word-wrap 

6
แม่แบบ WPF เทียบกับ RelativeSource TemplatedParent
อะไรคือความแตกต่างระหว่างการโยง 2 อันนี้: <ControlTemplate TargetType="{x:Type Button}"> <Border BorderBrush="{TemplateBinding Property=Background}"> <ContentPresenter /> </Border> </ControlTemplate> และ <ControlTemplate TargetType="{x:Type Button}"> <Border BorderBrush="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=Background}"> <ContentPresenter /> </Border> </ControlTemplate> ?

9
โปรแกรมไม่มีวิธีการ 'คงที่' ที่เหมาะสมสำหรับจุดเข้าใช้งาน
ทันใดนั้นโครงการทั้งหมดของฉันหยุดคอมไพล์เลยแสดงข้อความต่อไปนี้: โปรแกรม 'path_to_obj_project_folder' ไม่มีวิธีการ 'คงที่' ที่เหมาะสมสำหรับจุดเข้า ฉันไม่ทำการเปลี่ยนแปลงคุณสมบัติของโครงการเพียงเพิ่มคลาสบางคลาสย้ายคลาสอื่น ๆ ไปยังโฟลเดอร์ มันเป็นโครงการแอปพลิเคชัน WPF ดังนั้นมันควรจะตกลงทั้งหมด จุดเข้าคือที่ที่ควรเป็นไฟล์ App.xaml ไม่ได้ถูกแก้ไขเลย :( ฉันควรทำอย่างไรเพื่อให้ทำงานได้อีกครั้ง
169 c#  wpf 

2
อะไรคือความแตกต่างระหว่างห้องสมุดควบคุมผู้ใช้กับห้องสมุดควบคุมที่กำหนดเอง?
ฉันเพิ่งมาถึงความเร็วใน WPF และต้องการสร้างการควบคุม WPF นำมาใช้ใหม่ เมื่อฉันดูตัวเลือกสำหรับการสร้างโครงการใน Visual Studio ฉันเห็น "WPF User Control Library" และ "WPF Custom Control Library" มันไม่ชัดเจนสำหรับฉันว่าความแตกต่างระหว่างพวกเขากับการค้นหาโดย Google ของฉันยังไม่ปรากฏคำอธิบายที่เหมาะสม ฉันต้องการที่จะเข้าใจความแตกต่างระหว่างพวกเขาและเห็นตัวอย่างบางส่วนของเวลาที่จะใช้อย่างใดอย่างหนึ่งมากกว่าที่อื่น

12
ผูกพันกับคุณสมบัติคงที่
ฉันมีช่วงเวลาที่ยากลำบากในการผูกคุณสมบัติสตริงแบบคงที่ง่าย ๆ กับกล่องข้อความ นี่คือคลาสที่มีคุณสมบัติแบบคงที่: public class VersionManager { private static string filterString; public static string FilterString { get { return filterString; } set { filterString = value; } } } ใน xaml ของฉันฉันต้องการผูกคุณสมบัติสแตติกนี้กับกล่องข้อความ: <TextBox> <TextBox.Text> <Binding Source="{x:Static local:VersionManager.FilterString}"/> </TextBox.Text> </TextBox> ทุกอย่างรวบรวม แต่ในเวลาทำงานฉันได้รับข้อยกเว้นต่อไปนี้: ไม่สามารถแปลงค่าในแอตทริบิวต์ 'แหล่งที่มา' เป็นวัตถุประเภท 'System.Windows.Markup.StaticExtension' ข้อผิดพลาดที่วัตถุ 'System.Windows.Data.Binding' ในไฟล์มาร์กอัป 'BurnDisk; …
168 wpf  xaml  data-binding 


2
InitializeComponent () ทำอะไรได้บ้างและทำงานอย่างไรใน WPF
สิ่งที่ไม่InitializeComponent()ทำและวิธีการที่ไม่ได้ทำงานใน WPF? โดยทั่วไปก่อนอื่น แต่โดยเฉพาะอย่างยิ่งฉันจะสนใจที่จะรู้รายละเอียดเต็มไปด้วยเลือดของคำสั่งของการก่อสร้างและสิ่งที่จะเกิดขึ้นเมื่อมีคุณสมบัติที่แนบมา

12
ภาพของฉันพร่ามัว! ทำไม SnapsToDevicePixels ของ WPF ไม่ทำงาน
ฉันใช้อิมเมจบางอย่างใน applcation WPF ของฉัน XAML: <Image Name="ImageOrderedList" Source="images/OrderedList.png" ToolTip="Ordered List" Margin="0,0,5,5" Width="20" Height="20" SnapsToDevicePixels="True" MouseUp="Image_MouseUp" MouseEnter="Image_MouseEnter" MouseLeave="Image_MouseLeave" /> แต่พวกเขาดูเลือนลาง เหตุใดSnapsToDevicePixels="True"บรรทัดนั้นจึงไม่ป้องกันปัญหานี้
165 .net  wpf  image  xaml 

3
การผูก ConverterParameter
มีวิธีที่ฉันสามารถทำได้ในStyle: <Style TargetType="FrameworkElement"> <Setter Property="Visibility"> <Setter.Value> <Binding Path="Tag" RelativeSource="{RelativeSource AncestorType=UserControl}" Converter="{StaticResource AccessLevelToVisibilityConverter}" ConverterParameter="{Binding RelativeSource={RelativeSource Mode=Self}, Path=Tag}" /> </Setter.Value> </Setter> </Style> ฉันเพียงแค่ต้องส่งTagผู้ปกครองระดับบนสุดและTagตัวควบคุมไปยังคลาสตัวแปลงของฉัน
165 wpf  xaml  styles 

3
wpf: วิธีการแสดงคำแนะนำเครื่องมือเมื่อปุ่มถูกปิดใช้งานโดยคำสั่ง?
ฉันพยายามที่จะแสดงคำแนะนำเครื่องมือโดยไม่คำนึงถึงสถานะของปุ่ม แต่ดูเหมือนจะไม่หลอกลวง: <Button Command="{Binding Path=CommandExecuteAction}" ToolTip="{Binding Path=Description}" ToolTipService.ShowOnDisabled="true" Style="{StaticResource toolbarButton}"> <Image Source="{Binding Path=Icon}"></Image> </Button> ฉันจะแสดงคำแนะนำเครื่องมือได้อย่างไรเมื่อปุ่มถูกปิดการใช้งานเนื่องจาก command.CanExecute คืนค่าเท็จ? บันทึก: ToolTipService.ShowOnDisabled = "true" ใช้งานได้อย่างมีเสน่ห์ เหตุผลที่ใช้งานไม่ได้ในตัวอย่างของฉันเป็นเพราะรูปแบบที่เกี่ยวข้องกับปุ่มกำหนดคำสั่งควบคุมและปิดการทดสอบการกดปุ่มเมื่อปุ่มถูกปิดใช้งาน (IsHitTestVisible = false) การเปิดใช้งานการทดสอบ Hit อีกครั้งใน controltemplate ทำให้คำแนะนำเครื่องมือปรากฏขึ้นเมื่อปุ่มถูกปิดใช้งาน
162 wpf 

12
DataTrigger ที่ค่าไม่เป็นโมฆะ?
ฉันรู้ว่าฉันสามารถตั้งค่าที่ตรวจสอบเพื่อดูว่าค่าเป็นโมฆะและทำอะไร ตัวอย่าง: <TextBlock> <TextBlock.Style> <Style> <Style.Triggers> <DataTrigger Binding="{Binding SomeField}" Value="{x:Null}"> <Setter Property="TextBlock.Text" Value="It's NULL Baby!" /> </DataTrigger> </Style.Triggers> </Style> </TextBlock.Style> </TextBlock> แต่ฉันจะตรวจสอบค่า "ไม่" ... เหมือนใน "NOT NULL" หรือ "NOT = 3" ได้อย่างไร เป็นไปได้ใน XAML หรือไม่ ผลลัพธ์:ขอบคุณสำหรับคำตอบของคุณ ... ฉันรู้ว่าฉันสามารถใช้เครื่องมือแปลงค่า (ซึ่งหมายความว่าฉันจะต้องใส่รหัสและนั่นจะไม่ใช่ XAML ที่บริสุทธิ์อย่างที่ฉันหวังไว้) อย่างไรก็ตามนั่นจะตอบคำถามที่มีประสิทธิภาพ "ไม่" คุณไม่สามารถทำได้ใน XAML บริสุทธิ์ อย่างไรก็ตามคำตอบที่เลือกอาจแสดงวิธีที่ดีที่สุดในการสร้างฟังก์ชั่นประเภทนั้น หาดี

10
ตัวอย่างการใช้ไฮเปอร์ลิงก์ใน WPF
ฉันเห็นคำแนะนำหลายประการที่คุณสามารถเพิ่มไฮเปอร์ลิงก์ไปยังแอปพลิเคชัน WPF ผ่านHyperlinkการควบคุม นี่คือวิธีที่ฉันพยายามใช้ในรหัสของฉัน: <Window xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" mc:Ignorable="d" x:Class="BookmarkWizV2.InfoPanels.Windows.UrlProperties" Title="UrlProperties" Height="754" Width="576"> <Grid> <Grid.RowDefinitions> <RowDefinition></RowDefinition> <RowDefinition Height="40"/> </Grid.RowDefinitions> <Grid> <ScrollViewer ScrollViewer.VerticalScrollBarVisibility="Auto" Grid.RowSpan="2"> <StackPanel > <DockPanel LastChildFill="True" Margin="0,5"> <TextBlock Text="Url:" Margin="5" DockPanel.Dock="Left" VerticalAlignment="Center"/> <TextBox Width="Auto"> <Hyperlink NavigateUri="http://www.google.co.in"> Click here </Hyperlink> </TextBox> </DockPanel > </StackPanel> </ScrollViewer> </Grid> <StackPanel HorizontalAlignment="Right" Orientation="Horizontal" …
160 c#  wpf  xaml  hyperlink 

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