wpf課程設計總結
A. WPF—— ListView顯示性別
一般來說WPF的綁定,起到的效果是值一一對應,如你資料庫里是0,到界面上還是0,不會變成男或女。 因此,你需要告訴他對應的規則:不是原來的一一對應,而是某種轉換,比如0轉換為「男」,1轉換為「女」。 因此總結下來就是,你這個綁定需要轉換。WPF的綁定類:Binding的實例,提供了一個叫做Converter的屬性,賦值必須是實現了IValueConverter介面的轉換類。然後系統綁定數據時,會根據轉換介面的方法實行指定的轉化,代碼具體如下: public partial class Window1 : Window { public Window1() { InitializeComponent(); Binding bind = (Binding)this.FindResource("BindSex"); bind.Converter = new ISexConvertr(); } } public class ISexConvertr : IValueConverter { #region IValueConverter 成員 public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture) { if (value != null) { return value.ToString() == "1" ? "男" : "女"; } return "不男不女"; } public object ConvertBack(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture) { throw new NotImplementedException(); } #endregion }
B. wpf中文電子書
本人現在在搞WPF,收藏了諸多C#, .NET, 面試總結,以及WPF的經典電子書,下面的全部可以下載,獻給
各位。NET網友。(很大一部分是網上很難找到的,本人總結之精華,CSDN上注冊即可獲得20分,已注冊的話隨便下)
下載地址: http://download.csdn.net/user/yangliuxiaowu/All/5
http://download.csdn.net/user/yangliuxiaowu/All/5
CSharp經典書,絕對牛,本人珍藏。
C# 精華,絕對的精華。5分絕對值!值!
NET框架設計_李建忠(譯) 5
你必須知道的.NET 5
WPF經典之作
C#[1].Net網路程序開發-Socket篇
VS2008新特性
C#25個問題
面試中會問的題目
面試機理性問題
面試English
C#面試大全
C#新內容
區別C#基礎
最經典的題目_面試人
面試機理性東西
C#排序查找
字元串操作總結
effectiveC++_中文第二版_酷勤網提供下載
Windows+Presentation+Foundation概要
WPF經典之作ch04
WPF程序設計指南(有書)
applications_code_markup
Programming .NET Security
Microsoft_.NET_Framework_2.0_Web-Based_Client_Development
Dot.NET.Test.Automation.Recipes.A.Problem.Solution.Approach
Microsoft_.NET_Framework_2.0_Application_Development_Foundation
25C#總結,3分絕對值。
wpf+3d
Foundations of WPF
Programming Windows Presentation Foundation
Wpf入門白皮書
XAML in a Nutshell.chm
程序員面試寶典
Data Structures Using C# (Mar 2007
C. wpf當屬性發生變化時,怎麼調用方法
ObervableCollection集合是響應修改的,當集合修改時,會觸發ObervableCollection集合對形象的PropertyChanged事件,綁定後WPF會自動響應事件,並對界面做出調整。
按道理講,你修改集合之後,ListBox中的各個Node是各自刷新顯示的,也就是你改了那個刷新哪個,你的問題估計是處在是否是在修改後調用了最高Node的OnPropertyChanged方法或者綁定重新執行了一遍,還有可能是ListBox控制項重新載入,重新初始化造成的。
你沒有具體說,我也不能確定。
至於刷新方法那是沒有。
總結一下:
1.最高Node的OnPropertyChanged方法
2.綁定重新執行了一遍
3.ListBox控制項重新載入
以上三中情況會造成那種效果,你排查一下吧。
D. WPF現在使用得多麼這個技術適用么
WPF感覺非常靈活,但是部署和開發的易用性都不是很好
E. 我又來了,求教WPF窗口邊框的問題,設置可調的無邊框/窄邊框窗口
wpf無邊窗口是個麻煩事情,只有做了的人才知道,首先你要實現處理WM_NCHitTest消息,根據滑鼠在窗體的位置返回可調的返回值,這樣就能調整或者拖動窗口,然後事情還沒完,還要調整最大化窗口時的大小,因為最大化的時候右邊和下邊都少了一塊(和樣式有關),然後還沒完,如果你這個無邊窗口是個子窗口,最小化後是在桌面的左下角,這時,你得重繪還原,最大化,關閉按鈕。總結來說就是首先校正窗口最大化的尺寸,其次,處理WM_NCHITTEST消息,再次,繪制一些細節部分。另外無邊窗口由於沒有樣式,所以不會像系統窗口那樣有毛玻璃一樣的光暈陰影。
F. WPF中如何實現多窗口通訊、傳值
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
}
//第二個窗口的引用
Window2 w2 = null;
private void button1_Click(object sender, RoutedEventArgs e)
{
//是第一次就打開新的窗口
if (w2 == null)
{
w2 = new Window2(textBox1.Text);
w2.Show();
}
else
{
//不是第一次,就直接更新 窗口2的textbox
w2.UpData(this.textBox1.Text);
}
}
}
public partial class Window2 : Window
{
public Window2()
{
InitializeComponent();
}
public Window2(string text)
{
InitializeComponent();
//設置text 的值
this.textBox1_inWindow_2.Text = text;
}
public void UpData(string str)
{
//設置text 的值
this.textBox1_inWindow_2.Text = str;
}
}
總結:
就是要第二個窗口提供一個方法,這個方法用來更新它的UI.第一個窗口去調用這個方法就可以了。
G. 用wpf做項目,會用到資料庫
推薦用linq to entities訪問資料庫,加上mvvm模式,就是比較好的構架了。
具體的實現你可以參考微軟的示例,在vs2010的安裝目錄下有叫C:Program FilesMicrosoft Visual Studio 10. Framework這個解決方案,具體路徑和你的安裝目錄相關。我還把它傳到附件了。
H. WPF程序設計指南.pdf」、「WPF經典知識總結.pdf」、「WPF專業編程指南.iso
我有部分的WPF編程寶典-C#2010的書,600頁,是由jpg格式轉換為pdf的。
建議想學WPF的話買本這個書,我現在就是在淘寶上買了本,84塊。。
裡面講的知識比較全面也比較基礎,主要講控制項的重要屬性之類的,唯一缺陷是沒有後台cs代碼,建議去網上找點例子看看。
網上有全面的2008版的,但是08的沒有3d效果的那一章內容。
或者去看下wpf深入淺出,網上有較多視頻,基本都是要下載的。
I. WPF中常用的表格控制項有哪些
Visual Studio自帶的系統控制項,可以顯示和編輯來自多種不同類型的數據源的表格數據。
將數據綁定到 DataGridView 控制項非常簡單和直觀,在大多數情況下,只需設置 DataSource 屬性即可。在綁定到包含多個列表或表的數據源時,只需將 DataMember 屬性設置為指定要綁定的列表或表的字元串即可。 DataGridView 控制項具有一定的可配置性和可擴展性,它提供屬性、方法和事件,可以用來對該控制項的外觀和行為進行自定義。當需要在 Windows 窗體應用程序中顯示表格數據時,請首先考慮使用 DataGridView 控制項。 ComponentOne FlexGrid是一款易用、靈活的高性能表格控制項,可幫助用戶創建友好界面,用於展示、變更、修改格式、組織、總結和列印各種數據。它提供所有基礎功能,以及更加靈活的高級功能,包括概要樹、單元格合並、高級列印、快速變更格式、單元格自定義等。通過自定義功能,您可以創建您自己的單元格類,自定義表格的呈現和特性等。
ComponentOne FlexGrid支持微軟的多個平台,包括Silverlight, WPF, WinForms, ActiveX, Compact Framework等。 Spread是一款功能最為強大的表格控制項,可用於在Windows Form下和應用程序中進行大量數據的復雜處理和呈現,實現Excel的主要功能。
Spread可以導入和導出Microsoft Excel 格式的文件; 支持80多種豐富多彩的圖表效果;提供320多種計算公式;支持多工作表、跨工作表,公式索引、分層顯示、分組、有條件的格式、排序、行篩選、搜索、縮放、撤銷/重復、數據綁定或解綁模式、拆分條等功能。 是一款面向軟體設計人員的表格控制項, 擁有 600 多個編程介面, 功能豐富、簡單易用,集成了表格產品編輯輸入、公式運算、數據顯示/展現的特點,同時又兼顧了報表產品的數據源綁定,數據統計和列印輸出的功能,是管理軟體模板化開發必不可少的組件產品。
J. WPF怎麼自定義設計成這個界面!
看一下MSDN,裡面有關於WPF設計器擴展的詳細內容。找一下WPF設計器所在的類,在Microsoft.Expression.DesignModel.dll里。注冊元數據,再顯示設計器和屬性窗口。WPF有一個關於工具箱的控制項,好像叫ToolBox什麼的,可以自己在VS里添加。