Universal Windows Platform
Message Dialog
در این بخش از سری آموزش های برنامه نویسی پلتفرم ویندوز یونیورسال (برنامه نویسی ویندوز 10) به بحث نمایش پیغام ها می پردازیم. برای نمایش پیغام ها از Namespace (یا فضای نامی) زیر استفاده میکنیم.
using Windows.UI.Popups;
Message Dialog انواع مختلفی دارد که با تمامی آنها آشنا خواهید شد.
1. استفاده از Close پیش فرض
var messageDialog = new MessageDialog("You have a new message."); await messageDialog.ShowAsync();
در خط اول یک Message Dialog ساخته خواهد شد و مقدار دهی می شود.
در خط دوم نیز با استفاده از تابع ShowAsync نمایش داده خواهد شد. کلمه کلیدی await به معنای منتظر ماندن جهت نتیجه پیغام خواهد بود. به این صورت که در صورتی که کدی بعد از آن نوشته باشید اجرا نخواهد شد. این کلمه کلیدی الزامی است.
نکته ای که باید بدانید این است که بخاطر استفاده از await لازم است تابع مربوطه به صورت async تعریف شده باشد. یه عنوان مثال در رویداد کلیک یک Button بین دو private و void باید عبارت async را اضافه کنید.
نمونه:
private async void button_Click(object sender, RoutedEventArgs e) { .... }
نحوه اجرای حالت 1 را در Desktop و Mobile مشاهده می کنید.
2. استفاده از Cancel
// Create the message dialog and set its content var messageDialog = new MessageDialog("No internet connection has been found."); // Add commands and set their callbacks; both buttons use the same callback function instead of inline event handlers messageDialog.Commands.Add(new UICommand("Try again", new UICommandInvokedHandler(this.CommandInvokedHandler))); messageDialog.Commands.Add(new UICommand("Close", new UICommandInvokedHandler(this.CommandInvokedHandler))); // Set the command that will be invoked by default messageDialog.DefaultCommandIndex = 0; // Set the command to be invoked when escape is pressed messageDialog.CancelCommandIndex = 1; // Show the message dialog await messageDialog.ShowAsync();
در این حالت بخصوص در خط 5 و 6 همان طور که مشاهده می کنید. دو کلید به نام های "Try again" و "Close" تعریف شده اند. که هر کدام به یک Handler تخصیص داده شده اند. کد Handler را می توانید مشاهده کنید.
private void CommandInvokedHandler(IUICommand command) { ... }
در این حالت با استفاده از command می توانید رویداد را کنترل کنید. البته این تنها راه انجام این کار نیست. روش دیگری برای این کار وجود دارد.
در ادامه DefaultCommandIndex = 0 قرار داده شده است، اگر دقت کنید همان طوری که از نامش پیداست Index دکمه پیش فرضی که موقع اجرا انتخاب شود را تغیین می کند. در این حالت چون TryAgain زود تر تعریف شده است پس ایندکس ان 0 است پس این کلید انتخاب می شود و با فشار Enter توسط کاربر نیز انتخاب می شود.
CancelCommandIndex = 1 است که تعیین می کند که در صورتی که کاربر کلید Esc را فشار داد کدام رویداد اجرا شود.
ادامه به زودی ...
در مورد اینترنت محدود گرون ما و مشکل اضافه کردن امکان برنامه نویسی یونیورسال به VS2015 این جوابیه که به من توی فروم مایکروسافت دادن و احتمالا مشکلات زیادی رو حل میکنه
If you want a totally offline installer packages that can useful for the computer without internet, please follow the steps.
a. download the web installer of VS 2015 community with Update 2
الف. از طریق این لینک وب اینستالر VS 2015 رو دانلود کنید :
http://download.micr...s_community.exe
b. run the command:vs_community_ENU /layout in the elevated command prompt
ب. cmd رو بصورت ادمین اجرا میکنی با استفاده از دستور cd به محل دانلود فایل بالا میری و دستور vs_community.exe /layout رو تایپ میکنید و اینتر میزنید
c. After you run the command, you should be prompted for the download location. Enter the location, and then choose Download
پ. محل ذخیره فایل رو مشخص میکنید
d. When the package download is successful, you should see a Visual Studio screen that says Setup Successful! All specified components have been acquired successfully
ت. اگر عملیات دانلود موفقیت آمیز بود پیام فوق رو میبینید
e. In the file location that you specified, find the executable file and the package folder. This is everything you need to copy to a shared location or install mediae
ث. خوب حالا ما یه نسخه رایگان با تمام امکانات بصورت نصب کاملا آفلاین داریم !!! اگر بشه یه نفر انجام بده و بعد آپلود کنه عالی میشه البته از طریق نت ایران که بعیده اگر یه نفر یه سرور یا هاست نامحدود داشته باشه راحته
سرعت نت و هزینه زیادی میخواد این کار برای خودم که مقدور نیست !!!!!!!!!!!
اینم لینک سوال من توی فروم msdn
https://social.msdn....s?forum=vssetup