SlideShare a Scribd company logo
1 of 18
GUI Applications Development Using .NET Framework
Objectives


                In this session, you will learn to:
                   Implement Accessibility features in a .NET application
                   Identify features of international applications
                   Implement Globalization and Localization in a .NET application




     Ver. 1.0                        Session 8                           Slide 1 of 18
GUI Applications Development Using .NET Framework
Design Guideline for Accessible Applications


                •   Accessible applications are the applications that are
                    developed keeping in mind the specific requirement of users
                    with visual, mobility, and hearing disabilities.
                •   The applications developed in VC# can be made accessible
                    by setting certain properties of controls used in them.
                •   These applications are created with various design
                    guidelines. These guidelines are:
                       Flexibility to accommodate a variety of user needs and
                       preferences.
                       Simple interface to enable all types of users to interact with the
                       application.
                       Compatibility with accessibility aids for users with sensory
                       limitations.
                       Multiple Input and Output techniques to benefit users with
                       varying disabilities.

     Ver. 1.0                            Session 8                               Slide 2 of 18
GUI Applications Development Using .NET Framework
Standard Accessibility Properties in VC#


                To make an application accessible, some properties need to
                be set for the various controls on a form. These are:
                   AccessibleName
                   AccessibleDescription
                   AccessibleRole
                   TabIndex
                   Text
                   Font Size




     Ver. 1.0                       Session 8                      Slide 3 of 18
GUI Applications Development Using .NET Framework
Just a minute


                Which property is used to specify the use of an element in
                the user interface and reports it to the accessibility aids?
                 1. AccessibleDescription
                 2. AccessibleRole
                 3. AccessibleName




                Answer:
                 2. AccessibleRole


     Ver. 1.0                        Session 8                        Slide 4 of 18
GUI Applications Development Using .NET Framework
Identifying Features of International Applications


                • International applications are designed to be used across
                  the world.
                • International applications should be customizable according
                  to the preferences of the users across the world.
                • An application refers to a locale to identify users’
                  preferences.
                                                  The locale includes
                                                  information about formats
                                                  used for representing time
                                                  and date, symbols and
                                                  conventions used for
                                                  representing currency, and
                                                  the character encoding
                                                  scheme being used.



     Ver. 1.0                         Session 8                         Slide 5 of 18
GUI Applications Development Using .NET Framework
Identifying Features of International Applications (Contd.)


                The structure of an internationalized application is divided
                into two blocks:
                 – Code block               Contains the application
                 – Data block               code or the executable
                                            part of an application.
                                            This block will remain
                                            same for all locales.




     Ver. 1.0                       Session 8                          Slide 6 of 18
GUI Applications Development Using .NET Framework
Identifying Features of International Applications (Contd.)


                The structure of an internationalized application is divided
                into two blocks:
                 – Code block
                 – Data block               Contains all the resources, such as
                                            text and images, used by the user
                                            interface (UI). This block is
                                            locale-specific, and each locale will
                                            have one data block.




     Ver. 1.0                       Session 8                                   Slide 7 of 18
GUI Applications Development Using .NET Framework
Identifying Features of International Applications (Contd.)


                    The process of making an application ready for international
                    customers is called internationalization. This process
                    includes three phases as shown in the following figure.




                Involves writing the     Involves testing an           Involves the
                executable code for an   application, which has        customization of an
                application in such a    been globalized to ensure     application for a
                way that makes it        that its executable code is   specific locale.
                culture-neutral and      independent of the culture
                language-neutral.        and language specific
                                         data.
     Ver. 1.0                              Session 8                              Slide 8 of 18
GUI Applications Development Using .NET Framework
Factors Related to Creating International Applications


                The issues related to internationalization of applications are:
                   Language issues
                   Formatting issues
                   String-related issues
                   User-interface issues




     Ver. 1.0                       Session 8                          Slide 9 of 18
GUI Applications Development Using .NET Framework
Creating International Applications


                To create international applications, implement the
                following:
                   Work with multiple culture codes
                   Culture-specific formatting
                   Character encoding
                   Right-to-left display
                   Validate non-Latin user input
                   Culture-specific classes and methods




     Ver. 1.0                       Session 8                         Slide 10 of 18
GUI Applications Development Using .NET Framework
Just a minute


                • Which property of the CultureInfo class will return an
                  instance of the CultureInfo class that represents the
                  culture for culture-specific resources?




                  Answer:
                      CurrentUICulture


     Ver. 1.0                            Session 8                  Slide 11 of 18
GUI Applications Development Using .NET Framework
Globalizing Windows Forms


                Globalization is the process of identifying all localizable
                resources in the application and separating them from the
                executable code so that the localizable resources can be
                modified easily.
                Let us understand how we can create such applications.




     Ver. 1.0                       Session 8                        Slide 12 of 18
GUI Applications Development Using .NET Framework
Localizing Windows Forms


                Localization is the process of customizing an application for
                a given culture.
                Localization consists primarily of translating the user
                interface.
                A form can be localized by setting its Localizable property to
                True.
                Let us understand how can we create such applications.




     Ver. 1.0                       Session 8                         Slide 13 of 18
GUI Applications Development Using .NET Framework
Application Resources


                A resource is any non-executable data that is logically
                deployed with the application.
                Packaging the localizable data in a resource file allows to
                change the data without recompiling the entire application.
                Information is stored in a resource file in the Key/Value
                format.
                Consider the following code snippet:                    Key
                       WelcomeText = “Welcome to VC#”                   Value




     Ver. 1.0                       Session 8                          Slide 14 of 18
GUI Applications Development Using .NET Framework
Resource Assemblies


                Resource assemblies are assemblies that contain only
                resources.
                Advantage of resource assemblies:
                   The assembly can be updated as and when required without
                   having to recompile the application.
                Satellite assemblies are resource assemblies that include
                separate resources for different cultures.




     Ver. 1.0                      Session 8                         Slide 15 of 18
GUI Applications Development Using .NET Framework
Just a minute


                Which command prompt utility is used to convert a resource
                file from the text format into the binary format?




                Answer:
                   Resource File Generator (ResGen.exe) Utility


     Ver. 1.0                       Session 8                     Slide 16 of 18
GUI Applications Development Using .NET Framework
Summary


               In this session, you learned that:
                  Applications need to be made accessible so that they can be
                  used by a wide range of audience, including those with special
                  needs.
                  You need to follow a set of guidelines for developing
                  accessible applications.
                  The .NET Framework provides support for the development of
                  world-ready applications. It helps you create applications that
                  adapt to various languages, currency formats, date/time
                  formats, and other culture-specific information.
                  When developing a world-ready application, the process
                  should be divided into three phases: globalization, localizability,
                  and localization.
                  While globalizing an application, you should strive to code the
                  application in such a way that allows it to work equally well for
                  all cultures your application supports.

    Ver. 1.0                         Session 8                              Slide 17 of 18
GUI Applications Development Using .NET Framework
Summary (Contd.)


               During the localizability phase, you test whether the
               application's executable code has been properly separated
               from its resources.
               During localization an application is customized for specific
               cultures or regions.
               A resource is any non-executable data that is logically
               deployed with an application.




    Ver. 1.0                     Session 8                             Slide 18 of 18

More Related Content

What's hot

Android : Revolutionizing Mobile Devices
Android : Revolutionizing Mobile DevicesAndroid : Revolutionizing Mobile Devices
Android : Revolutionizing Mobile DevicesRitesh Puthran
 
Getting started with android
Getting started with androidGetting started with android
Getting started with androidamitgb
 
Meego Italian Day 2011 – Andrea Grandi
Meego Italian Day 2011 – Andrea GrandiMeego Italian Day 2011 – Andrea Grandi
Meego Italian Day 2011 – Andrea GrandiFrancesco Baldassarri
 
An Overview of Blackberry 10 & Blackberry App Development
An Overview of Blackberry 10 & Blackberry App DevelopmentAn Overview of Blackberry 10 & Blackberry App Development
An Overview of Blackberry 10 & Blackberry App DevelopmentFolio3 Software
 
Speed delivery of Android devices and applications with model-driven development
Speed delivery of Android devices and applications with model-driven developmentSpeed delivery of Android devices and applications with model-driven development
Speed delivery of Android devices and applications with model-driven developmentBill Duncan
 
Integration of OSGi and User Friendly UI Application - Akira Moriguchi
Integration of OSGi and User Friendly UI Application - Akira MoriguchiIntegration of OSGi and User Friendly UI Application - Akira Moriguchi
Integration of OSGi and User Friendly UI Application - Akira Moriguchimfrancis
 
실전 윈도우폰 망고 앱 디자인 & 개발 III(최종)
실전 윈도우폰 망고 앱 디자인 & 개발 III(최종)실전 윈도우폰 망고 앱 디자인 & 개발 III(최종)
실전 윈도우폰 망고 앱 디자인 & 개발 III(최종)mosaicnet
 
Android summer training report
Android summer training reportAndroid summer training report
Android summer training reportShashendra Singh
 
Android introduction
Android introductionAndroid introduction
Android introductionReena Nachare
 
How to Customize the MeeGo Tablet UX
How to Customize the MeeGo Tablet UXHow to Customize the MeeGo Tablet UX
How to Customize the MeeGo Tablet UXGail Frederick
 
Metro Style Apps - Whats there for Developers
Metro Style Apps - Whats there for DevelopersMetro Style Apps - Whats there for Developers
Metro Style Apps - Whats there for DevelopersJitendra Soni
 
Windows Phone 7.5 와 Windows 8 메트로 스타일 앱 개발
Windows Phone 7.5  와 Windows 8 메트로 스타일 앱 개발Windows Phone 7.5  와 Windows 8 메트로 스타일 앱 개발
Windows Phone 7.5 와 Windows 8 메트로 스타일 앱 개발Seo Jinho
 

What's hot (20)

Android : Revolutionizing Mobile Devices
Android : Revolutionizing Mobile DevicesAndroid : Revolutionizing Mobile Devices
Android : Revolutionizing Mobile Devices
 
Getting started with android
Getting started with androidGetting started with android
Getting started with android
 
SynapseIndia mobile build apps management
SynapseIndia mobile build apps managementSynapseIndia mobile build apps management
SynapseIndia mobile build apps management
 
Meego Italian Day 2011 – Andrea Grandi
Meego Italian Day 2011 – Andrea GrandiMeego Italian Day 2011 – Andrea Grandi
Meego Italian Day 2011 – Andrea Grandi
 
An Overview of Blackberry 10 & Blackberry App Development
An Overview of Blackberry 10 & Blackberry App DevelopmentAn Overview of Blackberry 10 & Blackberry App Development
An Overview of Blackberry 10 & Blackberry App Development
 
Intel Developer Day 2010, Berlin
Intel Developer Day 2010, BerlinIntel Developer Day 2010, Berlin
Intel Developer Day 2010, Berlin
 
Windows 8
Windows 8Windows 8
Windows 8
 
Mobile development
Mobile development Mobile development
Mobile development
 
Speed delivery of Android devices and applications with model-driven development
Speed delivery of Android devices and applications with model-driven developmentSpeed delivery of Android devices and applications with model-driven development
Speed delivery of Android devices and applications with model-driven development
 
Integration of OSGi and User Friendly UI Application - Akira Moriguchi
Integration of OSGi and User Friendly UI Application - Akira MoriguchiIntegration of OSGi and User Friendly UI Application - Akira Moriguchi
Integration of OSGi and User Friendly UI Application - Akira Moriguchi
 
Android Internals
Android InternalsAndroid Internals
Android Internals
 
IBM Worklight Whitepaper
IBM Worklight WhitepaperIBM Worklight Whitepaper
IBM Worklight Whitepaper
 
실전 윈도우폰 망고 앱 디자인 & 개발 III(최종)
실전 윈도우폰 망고 앱 디자인 & 개발 III(최종)실전 윈도우폰 망고 앱 디자인 & 개발 III(최종)
실전 윈도우폰 망고 앱 디자인 & 개발 III(최종)
 
Android summer training report
Android summer training reportAndroid summer training report
Android summer training report
 
Android introduction
Android introductionAndroid introduction
Android introduction
 
480 483
480 483480 483
480 483
 
How to Customize the MeeGo Tablet UX
How to Customize the MeeGo Tablet UXHow to Customize the MeeGo Tablet UX
How to Customize the MeeGo Tablet UX
 
Metro Style Apps - Whats there for Developers
Metro Style Apps - Whats there for DevelopersMetro Style Apps - Whats there for Developers
Metro Style Apps - Whats there for Developers
 
Windows Phone 7.5 와 Windows 8 메트로 스타일 앱 개발
Windows Phone 7.5  와 Windows 8 메트로 스타일 앱 개발Windows Phone 7.5  와 Windows 8 메트로 스타일 앱 개발
Windows Phone 7.5 와 Windows 8 메트로 스타일 앱 개발
 
Bhavin_Resume
Bhavin_ResumeBhavin_Resume
Bhavin_Resume
 

Viewers also liked

Gui application development guidelines
Gui application development guidelinesGui application development guidelines
Gui application development guidelinesLOUIS WAYNE
 
UI Automation_White_CodedUI common problems and tricks
UI Automation_White_CodedUI common problems and tricksUI Automation_White_CodedUI common problems and tricks
UI Automation_White_CodedUI common problems and tricksTsimafei Avilin
 
c# usage,applications and advantages
c# usage,applications and advantages c# usage,applications and advantages
c# usage,applications and advantages mohamed drahem
 
c#.Net Windows application
c#.Net Windows application c#.Net Windows application
c#.Net Windows application veera
 
Object-oriented Programming-with C#
Object-oriented Programming-with C#Object-oriented Programming-with C#
Object-oriented Programming-with C#Doncho Minkov
 
Graphical User Interface (GUI) - 2
Graphical User Interface (GUI) - 2Graphical User Interface (GUI) - 2
Graphical User Interface (GUI) - 2PRN USM
 
Chapter 4 — Variables and Arithmetic Operations
Chapter 4 — Variables and Arithmetic OperationsChapter 4 — Variables and Arithmetic Operations
Chapter 4 — Variables and Arithmetic Operationsfrancopw
 
Chapter 3 — Program Design and Coding
Chapter 3 — Program Design and Coding Chapter 3 — Program Design and Coding
Chapter 3 — Program Design and Coding francopw
 
Graphical User Interface
Graphical User Interface Graphical User Interface
Graphical User Interface Bivek Pakuwal
 
Advanced Coded UI Testing
Advanced Coded UI TestingAdvanced Coded UI Testing
Advanced Coded UI TestingShai Raiten
 
Chapter 1 — Introduction to Visual Basic 2010 Programming
Chapter 1 — Introduction to Visual Basic 2010 Programming Chapter 1 — Introduction to Visual Basic 2010 Programming
Chapter 1 — Introduction to Visual Basic 2010 Programming francopw
 
Graphical User Interface (GUI) - 1
Graphical User Interface (GUI) - 1Graphical User Interface (GUI) - 1
Graphical User Interface (GUI) - 1PRN USM
 
Chapter 2 — Program and Graphical User Interface Design
Chapter 2 — Program and Graphical User Interface DesignChapter 2 — Program and Graphical User Interface Design
Chapter 2 — Program and Graphical User Interface Designfrancopw
 
Presentation on visual basic 6 (vb6)
Presentation on visual basic 6 (vb6)Presentation on visual basic 6 (vb6)
Presentation on visual basic 6 (vb6)pbarasia
 
C# Tutorial
C# Tutorial C# Tutorial
C# Tutorial Jm Ramos
 

Viewers also liked (20)

4.C#
4.C#4.C#
4.C#
 
Gui application development guidelines
Gui application development guidelinesGui application development guidelines
Gui application development guidelines
 
UI Automation_White_CodedUI common problems and tricks
UI Automation_White_CodedUI common problems and tricksUI Automation_White_CodedUI common problems and tricks
UI Automation_White_CodedUI common problems and tricks
 
c# usage,applications and advantages
c# usage,applications and advantages c# usage,applications and advantages
c# usage,applications and advantages
 
c#.Net Windows application
c#.Net Windows application c#.Net Windows application
c#.Net Windows application
 
Gui automation framework
Gui automation frameworkGui automation framework
Gui automation framework
 
Object-oriented Programming-with C#
Object-oriented Programming-with C#Object-oriented Programming-with C#
Object-oriented Programming-with C#
 
Graphical User Interface (GUI) - 2
Graphical User Interface (GUI) - 2Graphical User Interface (GUI) - 2
Graphical User Interface (GUI) - 2
 
Chapter 4 — Variables and Arithmetic Operations
Chapter 4 — Variables and Arithmetic OperationsChapter 4 — Variables and Arithmetic Operations
Chapter 4 — Variables and Arithmetic Operations
 
Chapter 3 — Program Design and Coding
Chapter 3 — Program Design and Coding Chapter 3 — Program Design and Coding
Chapter 3 — Program Design and Coding
 
Graphical User Interface
Graphical User Interface Graphical User Interface
Graphical User Interface
 
Graphical User Interface
Graphical User InterfaceGraphical User Interface
Graphical User Interface
 
C#.NET
C#.NETC#.NET
C#.NET
 
Advanced Coded UI Testing
Advanced Coded UI TestingAdvanced Coded UI Testing
Advanced Coded UI Testing
 
Chapter 1 — Introduction to Visual Basic 2010 Programming
Chapter 1 — Introduction to Visual Basic 2010 Programming Chapter 1 — Introduction to Visual Basic 2010 Programming
Chapter 1 — Introduction to Visual Basic 2010 Programming
 
Graphical User Interface (GUI) - 1
Graphical User Interface (GUI) - 1Graphical User Interface (GUI) - 1
Graphical User Interface (GUI) - 1
 
Chapter 2 — Program and Graphical User Interface Design
Chapter 2 — Program and Graphical User Interface DesignChapter 2 — Program and Graphical User Interface Design
Chapter 2 — Program and Graphical User Interface Design
 
Visual Basic Controls ppt
Visual Basic Controls pptVisual Basic Controls ppt
Visual Basic Controls ppt
 
Presentation on visual basic 6 (vb6)
Presentation on visual basic 6 (vb6)Presentation on visual basic 6 (vb6)
Presentation on visual basic 6 (vb6)
 
C# Tutorial
C# Tutorial C# Tutorial
C# Tutorial
 

Similar to 06 gui 08

Phonebook Directory or Address Book In Android
Phonebook Directory or Address Book In AndroidPhonebook Directory or Address Book In Android
Phonebook Directory or Address Book In AndroidABHISHEK DINKAR
 
Building Windows8 Metro Applications
Building Windows8 Metro ApplicationsBuilding Windows8 Metro Applications
Building Windows8 Metro ApplicationsAbhishek Sur
 
THE WORLD OF HYBRID APP DEVELOPMENT
THE WORLD OF HYBRID APP DEVELOPMENTTHE WORLD OF HYBRID APP DEVELOPMENT
THE WORLD OF HYBRID APP DEVELOPMENTIRJET Journal
 
Android complete basic Guide
Android complete basic GuideAndroid complete basic Guide
Android complete basic GuideAKASH SINGH
 
Android : Architecture & Components
Android : Architecture & ComponentsAndroid : Architecture & Components
Android : Architecture & ComponentsAkash Bisariya
 
International Journal of Engineering Research and Development
International Journal of Engineering Research and DevelopmentInternational Journal of Engineering Research and Development
International Journal of Engineering Research and DevelopmentIJERD Editor
 
Online lg prodect
Online lg prodectOnline lg prodect
Online lg prodectYesu Raj
 
Know all about android development
Know all about android developmentKnow all about android development
Know all about android developmentDeepika Chaudhary
 
Android- Introduction for Beginners
Android- Introduction for BeginnersAndroid- Introduction for Beginners
Android- Introduction for BeginnersTripti Tiwari
 
6 Best JavaScript Framework for Mobile Apps Trending in 2023.pdf
6 Best JavaScript Framework for Mobile Apps Trending in 2023.pdf6 Best JavaScript Framework for Mobile Apps Trending in 2023.pdf
6 Best JavaScript Framework for Mobile Apps Trending in 2023.pdfBaek Yongsun
 
Android app development SEO Expert Bangladesh LTD.pdf
Android app development  SEO Expert Bangladesh LTD.pdfAndroid app development  SEO Expert Bangladesh LTD.pdf
Android app development SEO Expert Bangladesh LTD.pdfTasnim Jahan
 
Android app development SEO Expert Bangladesh LTD.pdf
Android app development  SEO Expert Bangladesh LTD.pdfAndroid app development  SEO Expert Bangladesh LTD.pdf
Android app development SEO Expert Bangladesh LTD.pdfTasnim Jahan
 
Best Android Frameworks For App Development In 2023.pdf
Best Android Frameworks For App Development In 2023.pdfBest Android Frameworks For App Development In 2023.pdf
Best Android Frameworks For App Development In 2023.pdfchristiemarie4
 
Ch1 hello, android
Ch1 hello, androidCh1 hello, android
Ch1 hello, androidJehad2012
 
Adaptation of Single-user Multi-touch Components to Support Synchronous Mobi...
Adaptation of Single-user Multi-touch Components to Support Synchronous Mobi...Adaptation of Single-user Multi-touch Components to Support Synchronous Mobi...
Adaptation of Single-user Multi-touch Components to Support Synchronous Mobi...pichiliani
 
report_barc
report_barcreport_barc
report_barcsiontani
 

Similar to 06 gui 08 (20)

01 gui 01
01 gui 0101 gui 01
01 gui 01
 
Phonebook Directory or Address Book In Android
Phonebook Directory or Address Book In AndroidPhonebook Directory or Address Book In Android
Phonebook Directory or Address Book In Android
 
Building Windows8 Metro Applications
Building Windows8 Metro ApplicationsBuilding Windows8 Metro Applications
Building Windows8 Metro Applications
 
THE WORLD OF HYBRID APP DEVELOPMENT
THE WORLD OF HYBRID APP DEVELOPMENTTHE WORLD OF HYBRID APP DEVELOPMENT
THE WORLD OF HYBRID APP DEVELOPMENT
 
Android complete basic Guide
Android complete basic GuideAndroid complete basic Guide
Android complete basic Guide
 
Android : Architecture & Components
Android : Architecture & ComponentsAndroid : Architecture & Components
Android : Architecture & Components
 
International Journal of Engineering Research and Development
International Journal of Engineering Research and DevelopmentInternational Journal of Engineering Research and Development
International Journal of Engineering Research and Development
 
Mobile Application Development class 001
Mobile Application Development class 001Mobile Application Development class 001
Mobile Application Development class 001
 
Android
AndroidAndroid
Android
 
Online lg prodect
Online lg prodectOnline lg prodect
Online lg prodect
 
Know all about android development
Know all about android developmentKnow all about android development
Know all about android development
 
Android- Introduction for Beginners
Android- Introduction for BeginnersAndroid- Introduction for Beginners
Android- Introduction for Beginners
 
6 Best JavaScript Framework for Mobile Apps Trending in 2023.pdf
6 Best JavaScript Framework for Mobile Apps Trending in 2023.pdf6 Best JavaScript Framework for Mobile Apps Trending in 2023.pdf
6 Best JavaScript Framework for Mobile Apps Trending in 2023.pdf
 
Android app development SEO Expert Bangladesh LTD.pdf
Android app development  SEO Expert Bangladesh LTD.pdfAndroid app development  SEO Expert Bangladesh LTD.pdf
Android app development SEO Expert Bangladesh LTD.pdf
 
Android app development SEO Expert Bangladesh LTD.pdf
Android app development  SEO Expert Bangladesh LTD.pdfAndroid app development  SEO Expert Bangladesh LTD.pdf
Android app development SEO Expert Bangladesh LTD.pdf
 
Best Android Frameworks For App Development In 2023.pdf
Best Android Frameworks For App Development In 2023.pdfBest Android Frameworks For App Development In 2023.pdf
Best Android Frameworks For App Development In 2023.pdf
 
Ch1 hello, android
Ch1 hello, androidCh1 hello, android
Ch1 hello, android
 
Android architecture
Android architectureAndroid architecture
Android architecture
 
Adaptation of Single-user Multi-touch Components to Support Synchronous Mobi...
Adaptation of Single-user Multi-touch Components to Support Synchronous Mobi...Adaptation of Single-user Multi-touch Components to Support Synchronous Mobi...
Adaptation of Single-user Multi-touch Components to Support Synchronous Mobi...
 
report_barc
report_barcreport_barc
report_barc
 

More from Niit Care (20)

Ajs 1 b
Ajs 1 bAjs 1 b
Ajs 1 b
 
Ajs 4 b
Ajs 4 bAjs 4 b
Ajs 4 b
 
Ajs 4 a
Ajs 4 aAjs 4 a
Ajs 4 a
 
Ajs 4 c
Ajs 4 cAjs 4 c
Ajs 4 c
 
Ajs 3 b
Ajs 3 bAjs 3 b
Ajs 3 b
 
Ajs 3 a
Ajs 3 aAjs 3 a
Ajs 3 a
 
Ajs 3 c
Ajs 3 cAjs 3 c
Ajs 3 c
 
Ajs 2 b
Ajs 2 bAjs 2 b
Ajs 2 b
 
Ajs 2 a
Ajs 2 aAjs 2 a
Ajs 2 a
 
Ajs 2 c
Ajs 2 cAjs 2 c
Ajs 2 c
 
Ajs 1 a
Ajs 1 aAjs 1 a
Ajs 1 a
 
Ajs 1 c
Ajs 1 cAjs 1 c
Ajs 1 c
 
Dacj 4 2-c
Dacj 4 2-cDacj 4 2-c
Dacj 4 2-c
 
Dacj 4 2-b
Dacj 4 2-bDacj 4 2-b
Dacj 4 2-b
 
Dacj 4 2-a
Dacj 4 2-aDacj 4 2-a
Dacj 4 2-a
 
Dacj 4 1-c
Dacj 4 1-cDacj 4 1-c
Dacj 4 1-c
 
Dacj 4 1-b
Dacj 4 1-bDacj 4 1-b
Dacj 4 1-b
 
Dacj 4 1-a
Dacj 4 1-aDacj 4 1-a
Dacj 4 1-a
 
Dacj 1-2 b
Dacj 1-2 bDacj 1-2 b
Dacj 1-2 b
 
Dacj 1-3 c
Dacj 1-3 cDacj 1-3 c
Dacj 1-3 c
 

Recently uploaded

What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...AliaaTarek5
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsNathaniel Shimoni
 
Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Farhan Tariq
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterMydbops
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityIES VE
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Hiroshi SHIBATA
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch TuesdayIvanti
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality AssuranceInflectra
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfpanagenda
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Strongerpanagenda
 
Fact vs. Fiction: Autodetecting Hallucinations in LLMs
Fact vs. Fiction: Autodetecting Hallucinations in LLMsFact vs. Fiction: Autodetecting Hallucinations in LLMs
Fact vs. Fiction: Autodetecting Hallucinations in LLMsZilliz
 

Recently uploaded (20)

What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directions
 
Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL Router
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a reality
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch Tuesday
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
 
Fact vs. Fiction: Autodetecting Hallucinations in LLMs
Fact vs. Fiction: Autodetecting Hallucinations in LLMsFact vs. Fiction: Autodetecting Hallucinations in LLMs
Fact vs. Fiction: Autodetecting Hallucinations in LLMs
 

06 gui 08

  • 1. GUI Applications Development Using .NET Framework Objectives In this session, you will learn to: Implement Accessibility features in a .NET application Identify features of international applications Implement Globalization and Localization in a .NET application Ver. 1.0 Session 8 Slide 1 of 18
  • 2. GUI Applications Development Using .NET Framework Design Guideline for Accessible Applications • Accessible applications are the applications that are developed keeping in mind the specific requirement of users with visual, mobility, and hearing disabilities. • The applications developed in VC# can be made accessible by setting certain properties of controls used in them. • These applications are created with various design guidelines. These guidelines are: Flexibility to accommodate a variety of user needs and preferences. Simple interface to enable all types of users to interact with the application. Compatibility with accessibility aids for users with sensory limitations. Multiple Input and Output techniques to benefit users with varying disabilities. Ver. 1.0 Session 8 Slide 2 of 18
  • 3. GUI Applications Development Using .NET Framework Standard Accessibility Properties in VC# To make an application accessible, some properties need to be set for the various controls on a form. These are: AccessibleName AccessibleDescription AccessibleRole TabIndex Text Font Size Ver. 1.0 Session 8 Slide 3 of 18
  • 4. GUI Applications Development Using .NET Framework Just a minute Which property is used to specify the use of an element in the user interface and reports it to the accessibility aids? 1. AccessibleDescription 2. AccessibleRole 3. AccessibleName Answer: 2. AccessibleRole Ver. 1.0 Session 8 Slide 4 of 18
  • 5. GUI Applications Development Using .NET Framework Identifying Features of International Applications • International applications are designed to be used across the world. • International applications should be customizable according to the preferences of the users across the world. • An application refers to a locale to identify users’ preferences. The locale includes information about formats used for representing time and date, symbols and conventions used for representing currency, and the character encoding scheme being used. Ver. 1.0 Session 8 Slide 5 of 18
  • 6. GUI Applications Development Using .NET Framework Identifying Features of International Applications (Contd.) The structure of an internationalized application is divided into two blocks: – Code block Contains the application – Data block code or the executable part of an application. This block will remain same for all locales. Ver. 1.0 Session 8 Slide 6 of 18
  • 7. GUI Applications Development Using .NET Framework Identifying Features of International Applications (Contd.) The structure of an internationalized application is divided into two blocks: – Code block – Data block Contains all the resources, such as text and images, used by the user interface (UI). This block is locale-specific, and each locale will have one data block. Ver. 1.0 Session 8 Slide 7 of 18
  • 8. GUI Applications Development Using .NET Framework Identifying Features of International Applications (Contd.) The process of making an application ready for international customers is called internationalization. This process includes three phases as shown in the following figure. Involves writing the Involves testing an Involves the executable code for an application, which has customization of an application in such a been globalized to ensure application for a way that makes it that its executable code is specific locale. culture-neutral and independent of the culture language-neutral. and language specific data. Ver. 1.0 Session 8 Slide 8 of 18
  • 9. GUI Applications Development Using .NET Framework Factors Related to Creating International Applications The issues related to internationalization of applications are: Language issues Formatting issues String-related issues User-interface issues Ver. 1.0 Session 8 Slide 9 of 18
  • 10. GUI Applications Development Using .NET Framework Creating International Applications To create international applications, implement the following: Work with multiple culture codes Culture-specific formatting Character encoding Right-to-left display Validate non-Latin user input Culture-specific classes and methods Ver. 1.0 Session 8 Slide 10 of 18
  • 11. GUI Applications Development Using .NET Framework Just a minute • Which property of the CultureInfo class will return an instance of the CultureInfo class that represents the culture for culture-specific resources? Answer: CurrentUICulture Ver. 1.0 Session 8 Slide 11 of 18
  • 12. GUI Applications Development Using .NET Framework Globalizing Windows Forms Globalization is the process of identifying all localizable resources in the application and separating them from the executable code so that the localizable resources can be modified easily. Let us understand how we can create such applications. Ver. 1.0 Session 8 Slide 12 of 18
  • 13. GUI Applications Development Using .NET Framework Localizing Windows Forms Localization is the process of customizing an application for a given culture. Localization consists primarily of translating the user interface. A form can be localized by setting its Localizable property to True. Let us understand how can we create such applications. Ver. 1.0 Session 8 Slide 13 of 18
  • 14. GUI Applications Development Using .NET Framework Application Resources A resource is any non-executable data that is logically deployed with the application. Packaging the localizable data in a resource file allows to change the data without recompiling the entire application. Information is stored in a resource file in the Key/Value format. Consider the following code snippet: Key WelcomeText = “Welcome to VC#” Value Ver. 1.0 Session 8 Slide 14 of 18
  • 15. GUI Applications Development Using .NET Framework Resource Assemblies Resource assemblies are assemblies that contain only resources. Advantage of resource assemblies: The assembly can be updated as and when required without having to recompile the application. Satellite assemblies are resource assemblies that include separate resources for different cultures. Ver. 1.0 Session 8 Slide 15 of 18
  • 16. GUI Applications Development Using .NET Framework Just a minute Which command prompt utility is used to convert a resource file from the text format into the binary format? Answer: Resource File Generator (ResGen.exe) Utility Ver. 1.0 Session 8 Slide 16 of 18
  • 17. GUI Applications Development Using .NET Framework Summary In this session, you learned that: Applications need to be made accessible so that they can be used by a wide range of audience, including those with special needs. You need to follow a set of guidelines for developing accessible applications. The .NET Framework provides support for the development of world-ready applications. It helps you create applications that adapt to various languages, currency formats, date/time formats, and other culture-specific information. When developing a world-ready application, the process should be divided into three phases: globalization, localizability, and localization. While globalizing an application, you should strive to code the application in such a way that allows it to work equally well for all cultures your application supports. Ver. 1.0 Session 8 Slide 17 of 18
  • 18. GUI Applications Development Using .NET Framework Summary (Contd.) During the localizability phase, you test whether the application's executable code has been properly separated from its resources. During localization an application is customized for specific cultures or regions. A resource is any non-executable data that is logically deployed with an application. Ver. 1.0 Session 8 Slide 18 of 18

Editor's Notes

  1. Start the session by sharing the session objectives with the students.
  2. Initiate the session by discussing with the students that there are people with different types of disabilities such as visual and hearing disabilities. In addition, discuss with the students that the users around the globe may be accessing the applications differently. While some of them may access applications on their desktops, some might access applications on their mobile devices. Also discuss with the students that all the users around the globe have different languages. Therefore, the applications that are designed must be capable of fulfilling the requirements of this wide variety of users. Such applications are known as accessible applications and can be developed easily by using VC#. Also discuss with the students that there are several guidelines for designing these accessible application. Discuss all of these guidelines with the students.
  3. Discuss all of the properties listed on this slide for designing accessible options.
  4. Reiterate the concepts taught earlier by asking the given question.
  5. Using this slide, discuss with the students that International applications provide the flexibility to be used across the globe. But in order to design these applications, it is essential to include information about the date and time formats and currency symbols. Discuss the following example with the students: a sales monitoring application designed for users in United States uses dollars as their currency. The same application when used by users in UK, would create problems as the users in UK will require all the currency to be converted into pounds. But by using international application, the same application can be used in the United States with dollar format and in UK with pound format. Therefore, the advantage of creating international applications using VC# is that the user is able to get customized applications.
  6. Using this and the next slide, discuss the structure of the International applications. Discuss with the students that the application is divided into two blocks, code block and the data block. The code block contains all the code, while the data block contains locale specific information. For example, the application when used in United States will have its currency in dollar. Whereas when the same application is used in UK, it will have its currency format as pounds.
  7. Using this slide discuss the process of internationalization with the students. Discuss all the three phases : Globalization Localizability Localization Explain this with the help of same sales monitoring application example. Explain to the students that globalization involves creating a general sales monitoring executable application which is not specific to any particular culture around the globe. Localizability involves testing this sales monitoring application to ensure that it does not require any culture specific data and it can work independently. Finally, to use the application for a specific culture such as in United States or UK, the sales monitoring application will have to be localized.
  8. Using this slide, discuss all the issues relating to the internationalization of applications. Explain the language issues to the students by taking the same example as given in the SG. This explains about the Arabic language which is written from right-to-left and hence can create problems while being used in an application. The formatting issues can also be discussed with the help of an example. The example that can be used to explain formatting issue is that of the currency. The currency keeps varying for most of the countries. The string related issues can be discussed with the students as discussed in the SG. Explain to the students that because of difference in language and alphabet set, the appearance of the application may need to be taken care of. For example, “Hello” is an english word. The same word may be written in different languages differently. The user-interface issues have similar problems. The strings written in different language require space differently and may create problems in appearance.
  9. Using this slide, discuss the factors to be considered while developing international application. The faculty must use the previous slide to categorize the issues. Working with multiple culture codes can lead to formatting issues Culture-specific formatting Character encoding can lead to language issues Handling right-to-left display can lead to language issues, formatting issues, and user-interface issues Validating non-Latin user input can lead to language issues as well as string related issues Using the culture-specific classes and methods can lead to language issues
  10. Reiterate the concepts taught earlier by asking the given question.
  11. The faculty must demonstrate the creation of such applications. In addition, using this slide you can discuss globalization with the students. You can take the same example from the SG which is as follows: Consider a form with a Label control named DateLabel, whose Text property is set as: DateLabel.Text = “5/23/1994”; In this case, the Text property of the DateLabel control is set to a constant value and therefore, will always be displayed, as is, whatever be the current culture-settings. Different cultures may use different formats for displaying dates. Therefore, you need to set the Text property of the DateLabel in such a way that allows the application to automatically display the date in a format corresponding to the current culture settings. You can set the Text property of the label by using the Format function, as shown in the following example: DateTime MyDateTime = DateTime.Parse("May 23, 1994"); DateLabel.Text = (MyDateTime.ToString(“d”));
  12. Using this and the next slide, the faculty must demonstrate how an application is localized and how resource files are created.
  13. Explain the advantage of using resource assemblies. These are extremely helpful in large applications where a large number of resource files are created.
  14. Reiterate the concepts taught earlier by asking the given question.
  15. You can summarize the session by using the summary given in the slides. In addition, you can also ask students summarize what they have learnt in this session.