星期二, 4月 24, 2018

[XF] ListView - 下拉更新

在 ListView 上啟用下拉更新功能
  • IsPullToRefreshEnabled:設為 true 啟用下拉更新
  • RefreshCommand:更新邏輯
  • IsRefreshing:RefreshCommand 內必須把 IsRefreshing 設為 false,更新 icon 才會消失
Product
namespace ListViewRefresh
{
    public class Product
    {
        public string Name { get; set; }

        public override string ToString()
        {
            return Name;
        }

        public static List<Product> GetData()
        {
            return new List<Product>
            {
                new Product() { Name = "楓葉" } ,
                new Product() { Name = "樹" } ,
                new Product() { Name = "花" } ,
                new Product() { Name = "煙火" } ,
                new Product() { Name = "夜景" }
            };
        }
    }
}

星期一, 4月 23, 2018

[XF] ListView 事件

練習 ListView 事件 - ItemTapped

app.xaml.cs
namespace ListViewEvent
{
    public partial class App : Application
    {
        public App()
        {
            InitializeComponent();

            MainPage = new NavigationPage(new MasterPage());
        }

        protected override void OnStart()
        {
            // Handle when your app starts
        }

        protected override void OnSleep()
        {
            // Handle when your app sleeps
        }

        protected override void OnResume()
        {
            // Handle when your app resumes
        }
    }
}

星期日, 4月 22, 2018

[XF] NavigationPage - 傳遞資料

NavigationPage 轉換 Page 時,可以透過兩種方式來傳遞資料
  • 建構子
  • BindingContext
App.xaml.cs
using Xamarin.Forms;

namespace NaviData
{
    public partial class App : Application
    {
        public App()
        {
            InitializeComponent();

            MainPage = new NavigationPage(new MainPage());
        }

        protected override void OnStart()
        {
            // Handle when your app starts
        }

        protected override void OnSleep()
        {
            // Handle when your app sleeps
        }

        protected override void OnResume()
        {
            // Handle when your app resumes
        }
    }
}
Contact Class
namespace NaviData
{
    public class Contact
    {
        public string Name { get; set; }
        public int Age { get; set; }
        public string Occupation { get; set; }
        public string Country { get; set; }
    }
}

星期六, 4月 21, 2018

[XF] NavigationPage - 登錄畫面

使用者登錄 App 後,透過重置 MainPage 來開啟一個 NavigationPage,避免使用者進入 App 後還可以回到登錄畫面

App.xaml.cs
namespace NaviLogin
{
    public partial class App : Application
    {
        public App()
        {
            InitializeComponent();
            // 一開始顯示 Login 畫面
            MainPage = new Login();
        }

        protected override void OnStart()
        {
            // Handle when your app starts
        }

        protected override void OnSleep()
        {
            // Handle when your app sleeps
        }

        protected override void OnResume()
        {
            // Handle when your app resumes
        }
    }
}

星期五, 4月 20, 2018

[XF] NavigationPage - 強制回應

需要使用者強迫回應選擇時,可以使用 NavigationPage - Model

app.xaml.cs
using Xamarin.Forms;

namespace NaviModel
{
    public partial class App : Application
    {
        public App()
        {
            InitializeComponent();

            MainPage = new NavigationPage(new Page1());
        }

        protected override void OnStart()
        {
            // Handle when your app starts
        }

        protected override void OnSleep()
        {
            // Handle when your app sleeps
        }

        protected override void OnResume()
        {
            // Handle when your app resumes
        }
    }
}

星期四, 4月 19, 2018

[XF] NavigationPage 簡易練習

NavigationPage 基礎操作,會進行下列操作
  1. 在 App.xaml 內設定使用 NavigationPage
  2. 設定 Title
  3. 跳到下一頁 - PushAsync
  4. 回上一頁 - PopAsync
  5. 回到首頁 - PopToRootAsync
  6. 換頁動畫 - 預設值為 true

星期五, 4月 13, 2018

[Win10] 傳送至

有個需求,要弄在 [傳送至] 的功能中,每次都會忘記路徑,紀錄一下,方便日後查詢

方法一:在 IE 上輸入,shell:sendto,就可以把 [傳送至] 視窗叫出來
[Win10] 傳送至-1

[Win10] 傳送至-2

方法二:Windows 總管路徑為 C:\Users\登入帳號\AppData\Roaming\Microsoft\Windows\SendTo

[Win10] 傳送至-3

把建立的 foxbin2prg - Binary2Text 和 foxbin2prg - Text2Binary 拖曳進 snedto 內,就可以使用啦

[Win10] 傳送至-4