2016年12月29日 星期四

Owl-Carousel 控制 height 的問題

Owl-Carousel 真的很強的照片輪撥外掛
只是 因加入了[透明遮照] 高度問題,一直控制不了 !
翻找好久 , 總算找到這篇 依原照片寬高來呈現的方法
Image slider: maintaining equal height for all images while keeping slider responsive
--
也能符合手機的瀏覽尺寸


          
//自動依圖尺寸
          $(".owl-carousel").each(function () {
              var $this = $(this);

              $this.owlCarousel({
                  afterUpdate: function () {
                      updateSize($this);
                  },
                  afterInit: function () {
                      updateSize($this);
                  }
              });
          });

          function updateSize($carousel) {
              var maxHeight = 0;

              $('.owl-item', $carousel).each(function () {
                  var $this = $(this);
                  var $image = $this.find('img');

                  //Max height
                  var prevHeight = $this.height();
                  var thisHeight = $this.height('auto').height();
                  $this.height(prevHeight);
                  maxHeight = (maxHeight > thisHeight ? maxHeight : thisHeight);

                  //Set image as background
                  var imageSource = $image.attr('src');
                  $this.css('backgroundImage', 'url(' + imageSource + ')');
              });

              //Set equal height
              $('.owl-item', $carousel).height(maxHeight); //maxHeight

              $('#max-height').text(maxHeight + 'px'); //maxHeight
          }
          //

輝哥的天空 登山

輝哥的天空
---
真是精彩的記錄!!
有興趣的可以看看,很詳細!

2016年12月28日 星期三

vs2015 aspx 儲存沒回應問題

第一次遇到 , 按儲存後 ; 沒回應...
結果強制中斷後 , 再啟動 *.aspx 標驚嘆號!
--
vs2015 還是會把原檔先作一份 TMP , 在轉存的!

如圖:



Making image captions using jQuery

Making image captions using jQuery  (適用輪撥照片外掛加掛文字 link)
hover-caption
----
找好久,目前測試下;是可以使用的!
PS:chrome  . ie 都失效 ; 再研究看看

20161229:
總算調整可以了,請查看底下1篇和2執行demo
Informações ao Passar Mouse na Foto
demo (1)
demo (2)
----
主要是採用了輪撥 owl.carousel 但並沒有 caption + link , 只能自加了!
字體還是醜...再慢慢調整了!

2016年12月24日 星期六

jquery ui autocomplete asp.net

jQuery UI Autocomplete and Enter Key - JSFiddle
---
jQuery UI AutoComplete TextBox with Database in ASP.Net (經測試..失效=.=完全沒反應!)
細節:
Autocomplete | jQuery UI
[jQuery] Autocomplete - 自動完成文字輸入
官方版本: jQuery-Autocomplete
AutoCompleteJS 多選版
---
改採用這2個:
Populate jQuery AutoComplete TextBox from Database using Web Service in ASP.Net
Implement jQuery AutoComplete TextBox from database using AJAX PageMethods in ASP.Net
---



jQuery keydown() Method

jQuery keydown() Method
---
EasyAutocomplete (外掛)
---
DYNATABLE (HTML5+JSON interactive table plugin.) 外掛
---

Insert Data Using jQuery Ajax in Asp.net C# [Database MS SQLServer]

Insert Data Using jQuery Ajax in Asp.net C# [Database MS SQLServer]ms-sql-server/
---
Handling JSON Arrays returned from ASP.NET Web Services with jQuery
---
A Beginner’s Guide To jQuery-Based JSON API Clients
---

asp.net+jQuery+json做Ajax

[c#]asp.net+jQuery+json做Ajax
---

jQuery Mobile 空白字符運用問題

一般會採用 :     這空白字符,但運用在手機/平板自動依尺寸;在第一次載入時,整個板面還對齊!  當窗口大小尺寸改變時,就會被轉換掉為無空白! 整個排板就亂掉了!
目前的作法,是將   -->改為 : ­   即可整齊! 
不會因為變更視窗大小尺寸,整個板面就亂掉.

可能看不懂我在說什麼,直接看圖即懂!
由圖一-->改變-->圖二-->再將改變回-->圖一時 --->若採用  就會完全被吃掉!(失效)
因要支援mobile , 所以一律禁用 table 表格 ; 只能使用 div 排版
---
常用的 HTML 特殊符號代碼
&lt; < 小於或顯示標記
&gt; > 大於或顯示標記
&amp; &可用於顯示其它特殊字元
&quot; " 雙引號
&reg; ®已注冊
&copy; ©版權
&trade; ™商標
&ensp;  半型空白
&emsp;  全型空白
&nbsp;  不斷行的空白

&符號要換成半型的 &

冪次方:2n-1
n 的冪次顯示是 <sup>n</sup> 包夾而成。
---


2016年12月23日 星期五

IIS 設定(進階1)

在windows 7 的環境下 , 有時要測試一些不同 framework 的版本
所以在IIS 上的設定 , 就要區分[應用程式的使用版本]
一般開發運用的版本對應 :
vs2008 --->net 2.0
vs2010 --->net 3.5
vs2012 --->net 3.5 / 4.0
vs2015 --->net 4.0
--------------------------
底下先來設定IIS部分(未加入ASP/ASPX) :






2016年12月22日 星期四

VS 2015 發行及IIS設定

查了一堆VS2015的發行設定,沒一篇是寫正常看懂的 ...Orz...
-----
VS2015 的發行設定( Default Web Site/WS_Server ):



---
IIS 設定:


調整為: v4.0
啟用上層路徑: True

預設文件: Index.aspx (或是自訂預設的啟動檔名)

jquery mobile 跳頁問題

jQuery Mobile 換頁之後(預設的ajax導頁) popup 失效的問題
jQuery Mobile不同网页之间的跳转问题
---
以上2篇均有說明

重點在:
<a href="page2.html" rel="external">page2</a>

jquery mobile popup dialog 使用問題

Dialogs , jQuery Mobile Popups
--
實在功力還處在:幼幼班階段....

當運用這 popup dialog 時,須注意 ID  / href 的用法!

也就是說:
index.aspx --->用了 popup --->id: mydialog

在:
product.aspx --->popup -->id 就不可以使用  mydialog 這個名稱(name)

---
一直狂 g (google )  .WoW ... 都沒有提到這些禁忌!!  Orz...

正規用法:
index.aspx  --->popup --->id : indexdialog
product.aspx --->popup--->id : productdialog

2016年12月21日 星期三

jquery mobile google map 地圖

jquerymobile google地图插件jquery-ui-map

如何在jquery mobile中加载google map api

---
官網: jquery-ui-map
直接看這份demo 及 js 較快

--
如何使用Google Map API的導航(Directions)
這篇真是詳細的說明用法,有空可以參考一下

--
網頁內嵌Google地圖與地理位置模擬

--
Google Maps JavaScript API – 設定Marker
看來這篇是較合適的
--
Google Maps API 測試
--


jQuery 一些不錯的外掛參考

These sample jQuery Scripts are for Learning Purposes only
---

透明的JqueryMobile對話框

透明的JqueryMobile對話框
--
原站:Transparent jQuery mobile dialogs
--

[CSS]
.ui-dialog-background {
opacity: 0.5;
display: block !important;
-webkit-transition: opacity 0.5s ease-in;
}
  
.ui-dialog-background.pop.in {
opacity: 1;
-webkit-transition: opacity 0.5s ease-in;
}
  
.ui-dialog {
min-height: 100% !important;
background: transparent !important;
} 
 
[Script]
當Jquery的版本>1.9時,.live的寫法會被移除掉,所以要採用以下第二個寫法。
 
1.
$(function() {
$('div[data-role="dialog"]').live('pagebeforeshow', function(e, ui) {
ui.prevPage.addClass("ui-dialog-background ");
});
$('div[data-role="dialog"]').live('pagehide', function(e, ui) {
$(".ui-dialog-background ").removeClass("ui-dialog-background ");
});
}); 
 
2.
$(function() {
$(document).on('pagebeforeshow', 'div[data-role="dialog"]', function (e, ui) {
    ui.prevPage.addClass("ui-dialog-background ");
});
 
$(document).on('pagehide', 'div[data-role="dialog"]', function (e, ui) {
    $(".ui-dialog-background ").removeClass("ui-dialog-background ");
});
});
[HTML]
    <div data-role="dialog" id="errorDialog" class="ui-corner-all">
        <div data-role="header">
            <h1>設備編號輸入失敗</h1>
        </div>
        <div role="main" class="ui-content">
            <div style="text-align: center;">
                <p>請重新掃描或以手動輸入。</p>
            </div>
            <a href="#page1" data-transition="fade" class="ui-btn">OK</a>
        </div>
    </div>

2016年12月20日 星期二

jquery mobile input inline button

Input field and submit button on the same line, full width
---
使用後,如圖:
---
<form action="search.php" method="get">
  <input type="submit" name="search" value="Go" style="float: right" />
  <div style="overflow: hidden; padding-right: .5em;">
    <input type="text" name="term" style="width: 100%;" />
   </div>
</form>

2016年12月17日 星期六

Image auto resize

image-auto-resize
--
參考連結內的解決方法

另一招更棒!!
How to resize images proportionally / keeping the aspect ratio?
---
CODE:

<div style="height: 100px">
<img src="http://www.getdigital.de/images/produkte/t4/t4_css_sucks2.jpg"
    style="max-height: 100%; max-width: 100%">
</div>​

2016年12月13日 星期二

關於錨點跳轉及jQuery下相關操作與插件

關於錨點跳轉及jQuery下相關操作與插件
--
jQuery教學-畫面上下滑動到指定區塊
--

Repeater+AspNetPager+Ajax留言板

Repeater+AspNetPager+Ajax留言板
---

白鼠魚 繁殖

白鼠魚 繁殖
聲明:
底下2張圖均是網路上抓的
白鼠魚:

蛋:

---
產卵徵兆:
會看到公魚追著母魚,母魚會一直游在缸璧黏蛋

刮蛋:
我現是採用大支的毛筆去鏟蛋下來,因蛋黏性高;會黏在毛筆上!
這方法也不是很好,往往一窩蛋就刮好久 ; 應該是可採用小四方塑膠開口盒(牙線盒)來刮蛋
ps:早上~ 上班又看到母魚在貼缸璧了...下班應該可以收蛋了! 再來用牙線盒刮蛋看看

孵蛋:
孵蛋真的會擔心 發霉問題!
已失敗2窩蛋了 , 也一直查網文別人的經驗值...有人說甲基藍..等!
其實都不好 , 我目前孵化率差不多70% ; 就是用空缸水來換80-90%
孵化盒採用外掛 , 避免和缸水內混合
水開始變混濁時,表示有在破蛋和發霉的蛋發生了;有空就把發霉的蛋挑掉!
蛋盡可能都是分散一粒一粒 , 不要粘在一起
還有一個問題,就是蛋為什麼會發霉 ? 只有3個原因
1.水蛋白質過高
2.蛋未受精完全
3.刮蛋時,蛋受損到(這個一定是100%會發霉)
所以一般最好且要9x%孵化的話,就是公母魚2公1母分配1缸 ; 當下完蛋後 , 成魚就是移缸;蛋留原缸即可! 這樣完全不需上面的工作!

底下為孵蛋過程和已孵化的小白鼠魚:

剛孵化的餵養:
目前還在研究,因實在太小隻了;1週內均不需餵食,或可以餵點細顆粒飼料! 只要缸水內有蛋白質或有機質物,就會長大!
等1-2週後,會看到長大至少 0.5-0.6cm 大小

白鼠魚經驗分享就先到這了! 等這窩長大,再來寫一篇成長經驗







w3schools jquery

官網:w3schools jQuery Tutorial
---

AspNetPager 帮助文档 (和參數運用重點)

AspNetPager 帮助文档
--
UrlPaging 获取或设置是否启用url来传递分页信息。
--
這個參數非常重要 , 困了我好多天....

主要是在設計 [商品列表顯示] , 當然就類似商城那樣
但採用 Repeater + AspNetPager + Dynamic Grid Layout Plugin Pinto
一直被 Pinto 搞得頭好大 , 因AspNetPager  UrlPaging  =True 的話 , 並不會重載 page load ; 就單純的內部採用 Ajax + josn 方式來寫進切換頁的 data ; 只要按[重整]  Pinto 圖檔又正常了!

我查了好多相關使用 AspNetPager   若掛商品圖文的 , 切換頁就失效 ! 
主因還是  UrlPaging =True  <-- span="">


2016年12月10日 星期六

Repeater 頁次設定

Implement Paging in Repeater control in ASP.Net
--
Asp.Net Repeater with Paging and Sorting Example in C#, VB.NET
--
Custom Paging with the ASP.NET Repeater Control
--
Pagination in Repeater, DataList control in asp.net
--
Paging Repeater Control using PagedDataSource
--
How to do paging with Repeater control in ASP.NET
--
Bind repeater using jQuery/Ajax.
--
Using jQuery Grid With ASP.NET MVC
--
Creating a Repeater that Supports Pagination and Sorting

Querying Data with the SqlDataSource Control

Querying Data with the SqlDataSource Control (C#)
--


ASP.NET jQuery Json 運用問題

前提:
我一直都是採用windows app 開發 , 對 asp.net + jQuery 實在是...很冷 = _ =!!
--
這1-2週一直在查 jQuery Mobile Json 套用商品(商城/購物車)相關的code .
雖然外掛了 商品 jQuery 套上了 , 當加入 DataBase 程序行為後 ; 卻始終找不出原因
為什麼外掛商品 image size 和 div css 均失效 ...Orz ..實在頭疼
狂搞了2週 ...還是沒進展!
直到找到這2篇 , 讓我突然頓悟了 ! 哈

JQuery Quickies #1 – GalleryView Plugin by Jack Anderson
Create a jQuery slideshow using database and a repeater in ASP.Net using

真是寶啊! 對長年沉淪在  windows app 開發中的我 ; 真是靈藥阿...
--
問題重點:
當採用Json 直接加入 div ...img ..等 ;在 瀏覽網頁code 時 , read database to Json  append html 並不存在網頁code內;這使造成 jQuery 外掛失效 !

解決方式:
還是要採用 webform 的寫法,才不會令jQuery失效 !

希望這篇對一直開發 windows app 想開發 web + mobile 的人有所幫助.

2016年12月6日 星期二

CSS 垂直置中的七個方法

CSS 垂直置中的七個方法
--
[CSS] 如何做出水平&垂直置中
--
用 jQuery Center Plugin 置中指定的 DOM 元素
--

Bind data and display datatable on aspx page using Jquery/JSON in asp.net

Bind data and display datatable on aspx page using Jquery/JSON in asp.net
---
嗯 , 就是這一篇了!!

主要設計是採用 ASP.NET WebForm  + jQuery Mobile + MS-SQL
要支持 Mobile , 就不用採用元件方式 ; 必須轉入 Json 格式來做

---
Call ASP.Net Page Method using jQuery AJAX Example
---
越看越猛的一個網站!!  都是我須要的技術文件!!
官網: aspdotnet-suresh
--
Ajax/jQuery.getJSON Simple Example
---

Retrieving and displaying data with model binding and web forms (vs2013)

Retrieving and displaying data with model binding and web forms
--
Creating a Data Access Layer (VB)
--
Creating a Basic ASP.NET 4.5 Web Forms Page in Visual Studio 2013
--
asp.net (web forms with VB.Net) connecting to a sql database
--

[底下為要使用 jQuery 運用找了相關的文章]

asp.net (web forms with VB.Net) connecting to a sql database
datatables - Server-side processing
How to use jQuery Datatables on VB.NET?
--
datatables - Server-side processing | ASP.NET with SQL Server 2008
--



WebForm 利用JSON.net 實現 DataTable轉JSON字串、JSON字串轉DataTable

[ASP.net WebForm] 利用JSON.net 實現 DataTable轉JSON字串、JSON字串轉DataTable (程式碼短少)
--
底部還好多asp.net 文章

2016年12月5日 星期一

7 jQuery Pagination Plugins | jQuery By Example

7-jquery-pagination-plugins
---
jPaginate: A Fancy jQuery Pagination Plugin
---
18 jQuery Pagination Plugins | jQueryHouse
--
Bootstrap Items Per Page Dropdown
這一個不錯
--

datatables dynamic pagination aspnet

Ajax data paging with dataTables.net jQuery plugin in asp.net MVC 3
--
Using jQuery DataTables with ASP.NET Mvc for server-side filtering, sorting and paging
--
Paginating data with Jquery Datatables and ASP.NET MVC [實作圖]good
這一篇不錯喔!!
--


VB-Tips

VB-Tips - Home
---
難得看到VB.NET code , 收錄一下!

jQuery Datatable server side pagination and sorting in ASP.NET MVC

jQuery Datatable server side pagination and sorting in ASP.NET MVC
--

DataTables Table plug-in for jQuery

官網:DataTables Table plug-in for jQuery
---
jQuery 套件 DataTables 的測試
---


jQuery 資料文字切換頁範例

Hello, this is bootpag - dynamic pagination jQuery plugin.
jQuery UI Tabs with Next/Previous
----
要相容mobile
有些方法就不得不放下WebForm 的寫法
找了好久,這2個能派上用場!!

ezoapp 教學手冊

ezoapp 教學手冊
JQM Designer (UI 設計模式)
[jQuery Mobile] 按鈕切換頁面 href 與 data-ref='back' 使用心得
使用 Google Sheets 作為資料庫,打造簡易成績單 App
jQuery Mobile - 移动web开发
---
真詳細

2016年12月1日 星期四

jQuery Mobile Demos 1.4.5

jquerymobile 1.4.5 Demos
--
目前採用的版本 .  還是要有個對照表 ; 不然版本不同 , 使用出來的不一樣

w3schools 官網

w3schools.com
---
查看了一下 , 資源文件越來越齊全了

無法下載 C:\Program Files (x86)\IIS Express\aspnetcore.dll 模組 DLL。資料為該錯誤。

問題原因:
若是在同一台VS2015 開發(或是同一台產出的專案/網站) 是不會有問題的!
但....
問題來了,當有2地開發同一專案時,就會發生IIS 10 Express 依當下OS產出一些編碼原則出來了!
---
g 了一大堆這樣的問題,該如何解決??   都是一些亂槍打鳥的沒效方法!
---
只好自己debug了!
---
問題顯示如圖:


這是因為移植到不同台後所產生的問題!!

很明顯ID是依當下原始OS專案產生的,解決方法:
<-- nbsp="" p="">
將專案在VS內先關閉,並至專案內的 [ .vs ] 目錄 整個刪除

刪除後,再重新開啟此專案 ; 再執行一次 , VS 自動會依本機的IIS環境重新編譯產生新的設定檔.config
---
總算正常運作了!!












吳老師教學部落格: Android APP開發證照教學懶人包

吳老師教學部落格: Android APP開發證照教學懶人包(new)
--

2016年10月18日 星期二

ScriptedSandbox64.exe has stopped working - Visual Studio 2015

請參考來源:ScriptedSandbox64.exe has stopped working - Visual Studio 2015
---

ASP.NET 網頁自動變成適合手機畫面


第一種方法、加在上方: 
<!DOCTYPE html PUBLIC "-//WAPFORUM//DTD XHTML Mobile 1.2//EN" "http://www.openmobilealliance.org/tech/DTD/xhtml-mobile12.dtd">

第二種方法、加在~之間:
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no, minimum-scale=1.0, maximum-scale=1.0" />

2016年10月11日 星期二

2016年9月21日 星期三

Xamarin Studio Theme bug (VS2015)

(xamarin  Project theme in layout designer not work)
VS 2015 Xamarin Studio Theme  看來是有bug
動不動就"跑馬燈"
就等看幾時修正好這問題
很麻煩 , 解決方式:  就是關掉VS 後 , 再重新啟動VS 開啟方案才正常!!

正常 Theme:



bug Theme:

-------
快速排除方法:
將啟動java * 32 結束,讓VS 自動再去啟動新的 java即可正常顯示 Theme



2016年9月19日 星期一

一路 NET , 主要為 C# & Xamarin

xamarin挖墙脚系列
---
超多的範例教學喔!!

Xamarin Mono Andorid with SQL Server Database

參考引用來源:Xamarin Mono Andorid with SQL Server Database
---

try
{
SqlConnection con = new SqlConnection("data source=192.168.1.33\SQLEXPRESS;initial catalog=odb_Terremot;user id=OSCAR;password=Data.SIS.@);
con.Open();
this.lblMensaje.Text = "Conexión establecida";
return;
}
catch
{
this.lblMensaje.Text = "No se pudo conectar a la base de datos";
return;
}


--
--

Connect Android to MS SQL Database

請參考來源: Connect Android to MS SQL Database
--
裡面還有很多好的文章

Using HttpClient to Consume ASP.NET Web API REST Services

請參考來源:Using HttpClient to Consume ASP.NET Web API REST Services
---
還有很多精採的技術文章唷!! 值得看看

iOS-Cocos2d

請參考來源:李华明iOS-Cocos2d游戏开发专题 -
--

Xamarin Android 連接MSSQL-使用WebService

請參考來源: 2015-12-03 [Xamarin Android] 連接MSSQL-使用WebService
---
請參考:Android通过WebService连接MSSQL
--

2016年9月13日 星期二

KB2810048 微軟針對 Office update 安全性問題的修正 有問題

雖然還在用office 2003 版 , 結果update 後;還是影響到了
安全性把一些網路都封掉了 , 無法透過網路開啟 Excel ( 其他 word ..等應該也一樣)
---
查看 :
KB2810048

Excel 2003 (KB2810048)   的安全性更新
安裝日期: ‎2016/‎9/‎13 上午 09:28
安裝狀態: 成功
更新類型: 重要
Excel 2003  中存在安全性弱點,可能會允許在開啟惡意修改的檔案時執行任意程式碼。此更新可解決該弱點。

---
重開機後 , 就 gg 了! 剩本端  才能開啟 ...
--
該來實驗移除看看!!

確定!! 將  KB2810048 移除 後 ; 透過區域分享編輯Excel 即可正常使用!!

其他 word 等等, 一樣移除掉;即可正常透過網路操作!

2016年9月8日 星期四

Xamarin使用教程 一到十四篇 (引用)

Xamarin使用教程一:背景处理
Xamarin使用教程二:图片切换
Xamarin使用教程三:DatePickerDialog的使用技巧
Xamarin使用教程四:隐藏StatusBar
Xamarin使用教程五:Portable Class Library
Xamarin使用教程六:如何引用JAR档案
Xamarin使用教程七:用Visual Studio开发Android HelloWorld!
Xamarin使用教程八:用Visual Studio开发iOS HelloWorld!
Xamarin使用教程九:在Windows上安装Xamarin.iOS(上)
Xamarin使用教程九:在Windows上安装Xamarin.iOS(下)
Xamarin使用教程十:在Windows上安装Xamarin.Android
Xamarin使用教程十一:Android 4.4沉浸式全屏体验
Xamarin使用教程十二:iOS中的视图动画
Xamarin使用教程十三:在iOS项目中使用ArcGIS Server云端数据
Xamarin使用教程十四:在iOS项目中使用ESRI ArcGIS SDK
--
评测:Xamarin Studio比VS2013好用的三个功能
--

C# 時間運用

最近休閒 - 手機板   game
發現這款遊戲均採用時間緒來處理事件
---

--
我也剛好要練習 C#  , 也就寫了一個簡單的

--
程式碼:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {

        int count;
        double ptr;

        public Form1()
        {
            InitializeComponent();
            //timer1.Interval = 100;
            //timer1.Enabled = true;
        }

        private void Form1_Load(object sender, EventArgs e)
        {
         
        }

        private void timer1_Tick(object sender, EventArgs e)
        {
            count++;
            label1.Text = count.ToString();
            if (count > Convert.ToInt32(ptr))
            {
                timer1.Enabled = false;
            }
            else
            {
                progressBar1.Value = count;
            }

        }

        private void button1_Click(object sender, EventArgs e)
        {
            timer1.Interval = Convert.ToInt16 (textBox1.Text);
            //
            DateTime h1 = DateTime.Now;
            DateTime h2 = DateTime.Now;
            h1 =h1.AddHours(Convert.ToDouble(textBox2.Text.Substring(0, 2)));
            h1=h1.AddMinutes(Convert.ToDouble (textBox2.Text.Substring(3, 2)));
            h1=h1.AddSeconds (Convert.ToDouble(textBox2.Text.Substring(6, 2)));

            TimeSpan h3 = h1.Subtract(h2);
            //ptr = h3.TotalMilliseconds ;
            ptr = h3.TotalSeconds;
                       
            progressBar1.Maximum = Convert.ToInt32(ptr);
           //        
            timer1.Enabled = true;

        }

        private void button2_Click(object sender, EventArgs e)
        {          
            timer1.Enabled = false;
        }
    }
}




各種日期時間計算

各種日期時間計算

//改變日期format

string startStr = start.ToString("yyyy-MM-dd HH:mm:ss");

DateTime dt = Convert.ToDateTime(startStr);//轉回DateTime

P.S format 大小寫意義不同: MM=month, mm=Minutes, HH=24hours, hh=12hours

//日期時間相加減

DateTime start = Convert.ToDateTime("2011-04-25 15:50:39");

DateTime end = Convert.ToDateTime("2011-05-02 15:50:39");

TimeSpan ts = end.subtract(start); //兩時間天數相減

double dayCount = ts.Days; //相距天數

//目前時間

DateTime dt = DateTime.Now;

//本周周一

DateTime startWeek = dt.AddDays(1 - Convert.ToInt32(dt.DayOfWeek.ToString("d")));

//本周周日

DateTime endWeek = startWeek.AddDays(6);

//本月月初

DateTime startMonth = dt.AddDays(1 - dt.Day);

//本月月末

DateTime endMonth = startMonth.AddMonths(1).AddDays(-1);

//本月月末

DateTime endMonth = startMonth.AddDays((dt.AddMonths(1) - dt).Days - 1);

//本季初

DateTime startQuarter = dt.AddMonths(0 - (dt.Month - 1) % 3).AddDays(1 - dt.Day);

//本季末

DateTime endQuarter = startQuarter.AddMonths(3).AddDays(-1);

//本年年初

DateTime startYear = new DateTime(dt.Year, 1, 1);

//本年年末

DateTime endYear = new DateTime(dt.Year, 12, 31);



至于昨天、明天、上周、上月、上季度、上年度等等,只要AddDays()、AddMonths()、AddYears()這幾種方法組合一下就可以了。

C#中datetime的使用

//由于DayOfWeek返回的是數字的星期幾,我們要把它轉成國字方便觀看,有些人可能用switch一一對照,其實不用那麼麻煩

string[] Day = new string[] { "星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六" };

string week = Day[Convert.ToInt32(DateTime.Now.DayOfWeek.ToString("d"))].ToString();



//上周,同理,一周是7天,上周就是本周再減去7天,下周也是一樣

 //上周一

DateTime.Now.AddDays(Convert.ToInt32 (1 - Convert.ToInt32(DateTime.Now.DayOfWeek)) - 7);      

//上周末(星期日)

DateTime.Now.AddDays(Convert.ToInt32 (1 - Convert.ToInt32(DateTime.Now.DayOfWeek)) - 7).AddDays(6);    

//下周一

DateTime.Now.AddDays(Convert.ToInt32 (1 - Convert.ToInt32(DateTime.Now.DayOfWeek)) + 7);      

//下周末

DateTime.Now.AddDays(Convert.ToInt32(1 - Convert.ToInt32(DateTime.Now.DayOfWeek)) + 7).AddDays(6);    

//本月,很多人都會說本月的第一天肯定是1號,最後一天就是下個月一號再減一天。這當然是對的

//一般的寫法

//第一天

DateTime.Now.Year.ToString() + DateTime.Now.Month.ToString() + "1";

//最後一天

DateTime.Parse(DateTime.Now.Year.ToString() + DateTime.Now.Month.ToString() + "1").AddMonths(1).AddDays(-1).ToShortDateString();



//巧用C#裡ToString的字串格式化更方便

DateTime.Now.ToString("yyyy-MM-01");

DateTime.Parse(DateTime.Now.ToString("yyyy-MM-01")).AddMonths(1).AddDays(-1).ToShortDateString();



//上個月,減去一個月份

DateTime.Parse(DateTime.Now.ToString("yyyy-MM-01")).AddMonths(-1).ToShortDateString();

DateTime.Parse(DateTime.Now.ToString("yyyy-MM-01")).AddDays(-1).ToShortDateString();

//下個月,加去一個月份

DateTime.Parse(DateTime.Now.ToString("yyyy-MM-01")).AddMonths(1).ToShortDateString();

DateTime.Parse(DateTime.Now.ToString("yyyy-MM-01")).AddMonths(2).AddDays(-1).ToShortDateString();

//7天後

DateTime.Now.Date.ToShortDateString();

DateTime.Now.AddDays(7).ToShortDateString();

//7天前

DateTime.Now.AddDays(-7).ToShortDateString();

DateTime.Now.Date.ToShortDateString();



//本年度,用ToString的字串格式化我們也很容易地算出本年度的第一天和最後一天

DateTime.Parse(DateTime.Now.ToString("yyyy-01-01")).ToShortDateString();

DateTime.Parse(DateTime.Now.ToString("yyyy-01-01")).AddYears(1).AddDays(-1).ToShortDateString();

//上年度,不用再解釋了吧

DateTime.Parse(DateTime.Now.ToString("yyyy-01-01")).AddYears(-1).ToShortDateString();

DateTime.Parse(DateTime.Now.ToString("yyyy-01-01")).AddDays(-1).ToShortDateString();

//下年度

DateTime.Parse(DateTime.Now.ToString("yyyy-01-01")).AddYears(1).ToShortDateString();

DateTime.Parse(DateTime.Now.ToString("yyyy-01-01")).AddYears(2).AddDays(-1).ToShortDateString();



//本季,我們都知道一年四個季節,一個季節三個月

//首先我們先把日期推到本季度第一個月,然後這月的第一天就是本季的第一天了

DateTime.Now.AddMonths(0 - ((DateTime.Now.Month - 1) % 3)).AddDays(1 - DateTime.Now.Day);

//同理,本季度的最後一天就是下季的第一天減一

DateTime.Parse(DateTime.Now.AddMonths(3 - ((DateTime.Now.Month - 1) % 3)).ToString("yyyy-MM-01")).AddDays(-1).ToShortDateString();

//下季

DateTime.Now.AddMonths(3 - ((DateTime.Now.Month - 1) % 3)).ToString("yyyy-MM-01");

DateTime.Parse(DateTime.Now.AddMonths(6 - ((DateTime.Now.Month - 1) % 3)).ToString("yyyy-MM-01")).AddDays(-1).ToShortDateString();

//上季

DateTime.Now.AddMonths(-3 - ((DateTime.Now.Month - 1) % 3)). AddDays(1 - DateTime.Now);

DateTime.Now.AddMonths(0 - ((DateTime.Now.Month - 1) % 3)).AddDays(1 - DateTime.Now.Day).AddDays(-1).ToShortDateString();



如:"20100101"轉換成日期型別

"20100101"轉換成int型別

1、DateTime dt=Convert.ToDateTime("20100101".Substring(0,4)+"-"+"20100101".Substring(4,2)+"-"+"20071107".Substring(6,2));

int i=Convert.ToInt32("20100101");

2、Convert.ToDateTime、DateTime.Parse()

3、string str = "20100101";

DateTime dt = DateTime.ParseExact(str, "yyyyMMdd", null);

int i;

int.TryParse(str, out i);

4、定義一個DateTimePicker對象,將需要轉化的字串賦予DateTimePicker的Text屬性,

然後DateTimePicker的Value值就是你需要的日期和時間,Value值還有Minite,Second等屬性,可以取得時,分,秒,豪秒等值.

免費電子書:C# 程式設計

C# 程式設計 - 免費電子書:C# 程式設計
--
裡面有:

基礎篇
C# 簡介
開發環境
變數與運算
流程控制
陣列
函數
物件
例外處理
函式庫篇
檔案處理
資料結構
正規表達式
Thread
應用篇
視窗程式
影音媒體
網路程式
遊戲程式
手機程式
資料庫
雲端運算
特殊功能
委派
擴展方法
序列化

---

看來要進入 Xamarin , 還是要習慣一下 C#  ; 但對於 Xamarin 內的寫法 ..又不是很習慣!
是要雙路併進了...

Xamarin 官網的Android元件運用教學說明

xamarin android 的元件
---
努力學...看原文最好了!!

2016年9月6日 星期二

visual studio 2015 xamarin android 第03個AVD設定及版本問題

Android  AVD 設定及VS APP 的屬性設定 的版本必須是一致性!!
例:
AVD 採用 4.0.3 版本 , 那APP屬性就必須是 4.0.3 或更低版本才行!! (這一點很重要)

底下為AVD設定:



APP屬性設定:

----
以上為重要細節!!
當這些都設定正確後,再執行RUN  ; 在 AVD 就可正常運作!! (如下圖)




visual studio 2015 xamarin android 第02個程式

參考寫法:Visual Studio 跨平台開發實戰(4) - Xamarin Android 基本控制項介紹
---
有注意到?  人家這篇是2013年耶.... 我太落後了!
---
底下來看看這篇,是一個完整的設定及程式初試!

(1)app 的屬性設定:
--
(2)GUI版面設計: 3個元件

(3)程式部分:
using System;
using Android.App;
using Android.Content;
using Android.Runtime;
using Android.Views;
using Android.Widget;
using Android.OS;

namespace App1
{
    [Activity(Label = "App1", MainLauncher = true, Icon = "@drawable/icon")]
    public class MainActivity : Activity
    {
        int count = 1;

        protected override void OnCreate(Bundle bundle)
        {
            base.OnCreate(bundle);

            // Set our view from the "main" layout resource
            SetContentView(Resource.Layout.Main);          

            // Get our button from the layout resource,
            // and attach an event to it
            Button button = FindViewById
            TextView msg = FindViewById(Resource.Id.textView1);
           
            button.Click += delegate { button.Text = string.Format("{0} clicks!", count++);
                msg.Text = "VS Xamarin for Android 程式!";
            };

            msg.Click += Msg_Click;

            //
            var seekbar = FindViewById(Resource.Id.seekBar1);
            var seekmsg = FindViewById(Resource.Id.textView1);
            seekbar.Max = 100;
            seekbar.ProgressChanged += (sender, e)=>{
                seekmsg.Text = string.Format("seekbar的值大小:{0}",seekbar.Progress .ToString());
            };
        }

        private void Msg_Click(object sender, EventArgs e)
        {
            TextView msg = FindViewById(Resource.Id.textView1);
            msg.Text = "Xamarin Android 的程式變化";

            //throw new NotImplementedException();
        }

    }
}

程式說明:
此部分採用了2種寫法, 直接宣告部分 及利用事件方式寫法!
其目的是一樣的!

直接宣告包事件,會是最好的方式!!

(4)執行結果:


----
簡單快速多了 ! 也很習慣  VS 的GUI !!



























2016年9月5日 星期一

visual studio 2015 xamarin android 第01個程式

使用 VS  Xamarin 開發 , 真的要多用點心了!!
必竟是收購的 , 微軟沒法直接加到GUI 連動全部的 link
真的是停在 vs 2008 / 2010 / 2012 忙著開發 windows app  , 都沒時間來研究及跟上微軟的腳步!
--
我的主語是 visual basic  , 但看到  Xamarin 已成熟了 ; 雖然是 c# ...也是OK的 ! 習慣一下
相信未來,我會放上很多 VS Xamarin 的練習! 
這 Android / IOS 真的須要來開發了 , 在不跟上 ; 會被淹沒的 !! 
--
之前練習了很多 java eclipse , Android Studio  ...實在很不習慣 !
好了 , 底下就來看看怎跑第一Android 程式呢!?
--
(1) 先執行AVD 虛擬器起來

(2)執行 PreEmptive Protection (說也很怪!! 不先讓這個啟動一次 , 只開 AVD ; Android app 是不會自動 link 執行起來 ! 自執行一次後 , 未來只要 run AVD 即可自動 link Android app )


(3)當 PreEmptive Protection 執行起來 , AVD 即可看到 android app !! 再關掉 PreEmptive Protection及 AVD , 重新執行 AVD !!  即可正常運作了!