1. 程式人生 > >Silverlight中的一些Convert整理

Silverlight中的一些Convert整理

一、0,1轉換成true,false用於繫結類似CheckBox中的IsChecked屬性:

二、時間字串轉換

使用方法如下:

 首先在需要使用轉換的頁面中加入下語句:

xmlns:local="clr-namespace:XXX"  //XXX是你Silverlight的專案名稱空間

然後新增:

<UserControl.Resources>
        <local:DateTimeConverter x:Key="DateTimeConverter" />

       <local:BoolConverter x:Key="BoolConverter " />

</UserControl.Resources>

 <CheckBox x:Name="chk1" Content="我是CheckBox" IsChecked="{Binding 資料庫表字段,Convert={StaticResource BoolConverter }}"

Margin="5" />

三、Image圖片Source屬性繫結

定義一個轉換器IconConverter類

 // Icon是源型別,ImageSource是目標型別。
[ValueConversion(typeof(Icon), typeof(ImageSource))]
//繼承了 IValueConverter
public class IconConverter : IValueConverter                 
{
     public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
     {
             Icon icon = (Icon)value;    
             Bitmap bitmap = icon.ToBitmap();
             IntPtr hBitmap = bitmap.GetHbitmap();
             ImageSource bitmapSource =
             Imaging.CreateBitmapSourceFromHBitmap(
             hBitmap, IntPtr.Zero, Int32Rect.Empty,
             BitmapSizeOptions.FromEmptyOptions());
             return bitmapSource;
     }

    //下面的函式是為了實現上面轉換的逆操作的,這裡我們不需要把ImageSource再變成Icon所以沒有寫具體的實現
    public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
    {
            throw new NotImplementedException();
     }
}



最後把資料再重新繫結一下,

1、新增引用:xmlns:local="clr-namespace:轉換器所在名稱空間"

2、新增資源:<local:IconConverter x:Key="iconConverter"/>

3、繫結轉換器資料:<Image Source="{Binding Path=MenuIcon, Converter={StaticResource iconConverter}}" />


OK,問題解決了。


相關推薦

Silverlight一些Convert整理

一、0,1轉換成true,false用於繫結類似CheckBox中的IsChecked屬性: public class BoolConverter : IValueConverter { public object Convert(object va

vue使用一些整理(componet等)

建立元件 var aaa = Vue.component('labelSearch', { template: '<div>3333333333333333444</div>', data: function ()

J2EE一些常用的方法和細節整理

1.setAttribute、getAttribute方法 方法 描述 注意點 void setAttribute(String name,Object o) 設定屬性的名稱及內容

關於numpy、pandas、matplotlib、SciPy使用一些問題的不定期收集整理

1.這幾個元件的關係? 答:這幾個都是python中的庫。都需要import使用。 【1】其中numpy是python進行科學計算的基礎包,核心關注快速高效的資料讀寫處理,包括和其他語言間的配合,當然它也包含眾多對陣列的元素級操作以及相關數學運算函式。 【2】而pandas是使得pyth

nodejs學習過程遇到的一些難點整理

1. app.use app.use 載入用於處理http請求的middleware(中介軟體),當一個請求來的時候,會依次被這些 middlewares處理 app.use順序執行 注意:app.use註冊的中介軟體,如果path引數為空,則預設為”/

關於Java內部類的一些概念整理

    把一個類放到另一個類的內部定義,這個定義在其他類內部的類就被稱為內部類。     內部類的作用:     (1).內部類提供了更好的封裝,可以把內部類隱藏在外部類之內,不允許同一個包中的其他類訪問該類。     (2).內部類成員可以直接訪問外部類的私有資料,因為內

JS操作IE瀏覽器的一些方法整理

<html> <head>    <script   language=javascript>       //關閉前觸發的事件      window.onbeforeunload =function()        {    

JAVA 一些常常混淆的概念 (整理

Person person; person = new Person("張三");   這兩行程式碼實現的功能和上面的一行程式碼是完全一樣的。大家都知道,在Java中new是用來在堆上建立物件用的,如果person是一個物件的話,那麼第二行為何還要通過new來建立物件呢?由此可

numpy一些常用函數的用法總結

num matrix 空白 記錄 維數 補充 結果 創建 array 先簡單記錄一下,後續補充詳細的例子 1. strip()函數 s.strip(rm):s為字符串,rm為要刪除的字符序列 只能刪除開頭或是結尾的字符或者字符串。不能刪除中間的字符或是字符串 當rm為空

gdb一些常用的調試命令

== 指定 函數名 filename expr ons 函數 pre 調用 show version :顯示gdb版本信息 info functions :列出可執行文件的所有函數名稱 step(縮寫s):進入函數(函數必須有調試信息) next(縮寫n):不進入函數,g

總結Selenium WebDriver一些鼠標和鍵盤事件的使用

ict 效果 control window 只需要 html 執行 text keyevent 在使用 Selenium WebDriver 做自動化測試的時候,會經常模擬鼠標和鍵盤的一些行為。比如使用鼠標單擊、雙擊、右擊、拖拽等動作;或者鍵盤輸入、快捷鍵使用、組合鍵使用

Java一些jar包的作用

span 緩存 cxf 6.0 pri tag like servlet license axis.jar SOAP引擎包 commons-discovery-0.2.jar 用來發現、查找和實現可插入式接口,提供一些一般類實例化、單件的生命周期管理的常用方法. j

C#一些字符串操作的經常使用使用方法

mod tel ace pop 頻率 for char replace span 概述 本篇主要解說,字符串string的基本操作知識 倒序輸出 string str = Console.ReadLine(); for (i

前端開發一些容易混淆的概念匯總

提交表單 容易 html text bmi blog 技術分享 mit script ★:HTML中,按鈕button與submit區別是什麽? 1,button 定義可點擊按鈕(多數情況下,用於通過 JavaScript 啟動腳本)。 2,submit 定

如何查找Linux一些特殊數據類型定義,比如pid_t和uid_t(轉)

分享 文件 技術分享 定義 log 相關 uid linux源碼 pid 1. 查看man手冊,找到pid_t,可以通過getpid函數來看 2. 打開sys/types.h 3. 打開bits/types.h 4.

CentOS 7一些參數的設定

linux1、設置時區timedatectl list-timezones #列出所有時區 timedatectl set-local-rtc 1 #將硬件時鐘調整為與本地時鐘一致,0為設置為UTC時間 timedatectl set-timezone Asia/Shan

JavaIterator用法整理

mil rem println 對象 獲得 返回 new ext 插入 叠代器(Iterator)   叠代器是一種設計模式,它是一個對象,它可以遍歷並選擇序列中的對象,而開發人員不需要了解該序列的底層結構。叠代器通常被稱為“輕量級”對象,因為創建它的代價小。   Java

Javavector用法整理

遍歷 檢索 集合 ash ets toa java code lan ArrayList會比Vector快,他是非同步的,如果設計涉及到多線程,還是用Vector比較好一些 import java.util.*; /** * 演示Vector的使用。包括Vector的創

MapReduce 2 一些基礎數據類型

數據類型 com 浮點 ava key 接口 apr int java 數據類型 1. LongWritable, IntWritable, Text 均是 Hadoop 中實現的用於封裝 Java 數據類型的類,這些類實現了WritableComparable接口,都能夠

python字符串一些函數的用法

strip() strip 左右 art orm 是不是 必須 執行 count() 1..capitalize():字符串的首字母大寫; 2..count():字符串中的某個字母的個數; 3..center(50,‘-‘):對象居中,且左右用‘-’補齊; 4..enco