Skip to content

Instantly share code, notes, and snippets.

View ichengzi's full-sized avatar
🥇
coding...

chengzi ichengzi

🥇
coding...
View GitHub Profile
@ichengzi
ichengzi / WPF- FontChooser.cs
Last active November 6, 2015 02:49
文字选择器:动态修改字体,大小,粗细等font属性
// http://stackoverflow.com/questions/11572636/set-value-to-fontdialog-in-wpf/11572921#11572921
// http://blogs.msdn.com/b/text/archive/2006/11/01/sample-font-chooser.aspx
// 微软官方博客的字体选择器例子
//WPF
System.Windows.Forms.FontDialog fontDialog = new System.Windows.Forms.FontDialog();
if (fontDialog.ShowDialog() == System.Windows.Forms.DialogResult.OK)
{
FontFamilyConverter ffc = new FontFamilyConverter();
this.textAnnotation.FontSize = fontDialog.Font.Size;
namespace NAMESPACE
{
public enum WindowsMessage
{
WM_NULL = 0x0000,
WM_CREATE = 0x0001,
WM_DESTROY = 0x0002,
WM_MOVE = 0x0003,
WM_SIZE = 0x0005,
WM_ACTIVATE = 0x0006,
@ichengzi
ichengzi / Xaml Console Printer.cs
Created September 19, 2015 12:54
使用MergeAndValidatePrintTicket,VisualsToXpsDocument批量visual(网络搜集)
namespace XamlConsolePrinter
{
using System.Printing;
using System.Threading;
using System.Threading.Tasks;
using System.Threading.Tasks.Schedulers;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Xps;
@ichengzi
ichengzi / Program.cs
Last active September 19, 2015 12:56
Xaml Console Printer
namespace XamlConsolePrinter
{
using System.Printing;
using System.Threading;
using System.Threading.Tasks;
using System.Threading.Tasks.Schedulers;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Xps;
@ichengzi
ichengzi / latency.txt
Created January 17, 2016 06:26 — forked from jboner/latency.txt
Latency Numbers Every Programmer Should Know
Latency Comparison Numbers
--------------------------
L1 cache reference 0.5 ns
Branch mispredict 5 ns
L2 cache reference 7 ns 14x L1 cache
Mutex lock/unlock 25 ns
Main memory reference 100 ns 20x L2 cache, 200x L1 cache
Compress 1K bytes with Zippy 3,000 ns 3 us
Send 1K bytes over 1 Gbps network 10,000 ns 10 us
Read 4K randomly from SSD* 150,000 ns 150 us ~1GB/sec SSD
@ichengzi
ichengzi / create-new-file.ahk
Created April 22, 2016 15:05
AutoHotKey: Create a new file with Ctrl+Alt+N keyboard shortcut in Windows Explorer
; This is part of my AutoHotKey [1] script. When you are in Windows Explorer it
; allows you to press Ctrl+Alt+N and type a filename, and that file is created
; in the current directory and opened in the appropriate editor (usually
; [gVim](http://www.vim.org/) in my case, but it will use whatever program is
; associated with the file in Windows Explorer).
; This is much easier than the alternative that I have been using until now:
; Right click > New > Text file, delete default filename and extension (which
; isn't highlighted in Windows 7), type the filename, press enter twice.
; (Particularly for creating dot files like ".htaccess".)
@ichengzi
ichengzi / triggers.xaml
Created November 5, 2016 12:06
wpf triggers(property,data,event)
<TextBlock Text="Hello">
<TextBlock.Style>
<Style TargetType="TextBlock">
<Setter Property="Foreground" Value="Blue"></Setter>
<Style.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="Foreground" Value="Red" />
<Setter Property="TextDecorations" Value="Underline" />
</Trigger>
<DataTrigger Binding="{Binding RelativeSource={RelativeSource Self},Path=Text}" Value="Hello">
@ichengzi
ichengzi / DataTable2List.cs
Created November 13, 2016 11:20
LINQ - via cz
var input = "PQR";
DataTable dt = new DataTable();
dt.Columns.Add("PId", typeof(Int32));
dt.Columns.Add("PName", typeof(string));
dt.Columns.Add("Qty", typeof(Int32));
dt.Rows.Add(123, "XYZ", 2);
dt.Rows.Add(223, "ABC", 4);
dt.Rows.Add(434, "PQR", 33);
var stkLists = dt.AsEnumerable().ToList();
@ichengzi
ichengzi / mysql异常处理.sql
Created November 25, 2016 10:11
mysql数据库
DROP PROCEDURE IF EXISTS demo;
CREATE PROCEDURE demo()
BEGIN
DECLARE EXIT HANDLER FOR SQLWARNING,NOT FOUND,SQLEXCEPTION
BEGIN
set @o_ret=-1;
SELECT -2;
ROLLBACK;
END;
START TRANSACTION;
@ichengzi
ichengzi / enter2tab_Key.cs
Created December 1, 2016 08:02
wpf技巧
//enter键转tab键:
private void EnterKey_To_TabKey(object sender, KeyEventArgs e)
{
if (e.Key == Key.Enter)
{
TraversalRequest request = new TraversalRequest(FocusNavigationDirection.Next);
((FrameworkElement)sender).MoveFocus(request);
}
}