HTML Server Controls

HTML Server Controls को ASP.NET Framework के System.Web.UI.htmlControls नाम के Namespace में Define किया गया है, जिसमें लगभग 20 HTML Server Control Classes हैं। इन Classes को इस बात के आधार पर दो भागों में विभाजित किया गया है, कि वे Controls Input Control हैं या नहीं।

यदि Control Input Accept कर सकता है, तो उसे htmlInputControl Class से Derive किया गया है, जबकि यदि Control Input Accept नहीं कर सकता, तो उसे htmlContainerControl Class से Derive किया गया है। इन विभिन्न Classes की Hierarchy को हम निम्न चित्रानुसार ज्यादा बेहतर तरीके से समझ सकते हैं:

HTML Server Controls - Core ASP.NET using C# in Hindi

htmlControl Class

चूंकि सभी HTML Server Controls, htmlControl नाम की Class से Derive होते हैं। इसलिए इस htmlControl Class में भी Control नाम की Base Class की Properties के अलावा कुछ और PropertiesExistहोती हैं, जो कि निम्नानुसार हैं:

Attributes Property

ये Property हमें हमारे Create होने वाले HTML Server Control के Markup में एक Attributes Add करने अथवा पहले से Exist Attributes को Access करने की सुविधा Provide करता है। हम इस Collection का प्रयोग अपने Control के HTML Markup में उन Attributes को Add करने के लिए कर सकते हैं, जिन्हें किसी भी अन्‍य Property द्वारा Add नहीं किया जा सकता।

उदाहरण के लिए हम इस Collection का प्रयोग करते हुए किसी Textbox के HTML Element Markup के साथ onFocus Attribute को Add कर सकते हैं और इस Attribute के साथ किसी JavaScript Code को Specify कर सकते हैं, जो कि उस समय Execute होता है, जब उस Particular Textbox पर Focus Place होता है। जबकि किसी भी अन्‍य Property के माध्‍यम से इस Attribute को Textbox के HTML Markup में Add नहीं किया जा सकता।

Disabled Property

ये Property हमें किसी HTML Server Control के Markup की Disabled स्थिति को get/Set करने की सुविधा Provide करता है। यदि इस Property का मान true होता है, तो वह Control एक Grayed Control की तरह Render होता है, जो कि किसी भी तरह से Usable नहीं होता। यानी इस प्रकार के Disabled Control के साथ किसी प्रकार का Action Perform नहीं किया जा सकता।

Style Property

ये Property हमें उन CSS Attributes का एक Collection Return करता है, जिन्हें Control पर Apply किया गया है। हम हमारे Webpage में इस Property को एक Semicolon द्वारा Separated style:value Attributes के रूप में Specify करते हैं। Visual Studio IDE में हम इस Information को Control पर Right Click करते हुए Display होने वाले Popup Window से New Style Option को Select करते हुए Set कर सकते हैं।

TagName Property

ये Property हमें किसी HTML Server Control के Markup काTag Name जैसे कि img, b, i, em, div आदि Return करता है।

htmlContainerControl Class

हर वह HTML Element जिसके Opening व Closing दोनों Tags होते हैं, किसी भी अन्‍य HTML Element या Control को Contain कर सकता है।

उदाहरण के लिए Anchor Element <a>एक ऐसा Element है, जिसके बीच हम किसी भी अन्‍य Element जैसेकि Text, <img>,<span>आदि Elements को Wrap कर सकते हैं। इसलिए Anchor Element एक Container Element है।

कई अन्‍य HTML Elements भी हैं, जिन्हें हम Containers की तरह Use कर सकते हैं, जैसे कि<div>, <b>, <i> आदि लेकिन ये Elements किसी भी Server Control को Map नहीं करते। यानी ASP.NET Webpage के किसी भी Server Side Control से सम्बंधित नहीं होते। फिर भी हम इनमें runat=”server” Attribute का प्रयोग करके उन्हें Server Side ASP.NET Webpage में Access व Manipulate कर सकते हैं।

सामान्‍यत: इस प्रकार के HTML Elements को htmlGenericControl Classका प्रयोग करते हुए Server Side ASP.NET Webpage में Access व Manipulate किया जाता है।

विभिन्न प्रकार के Container HTML Elements के Containment की Functionality को Support करने के लिए htmlContainerControl Class में मूल रूप से निम्नानुसार दो Properties को Add किया गया है:

Inner HTML Property

इस Property का प्रयोग करके हम किसी HTML Server Control में नया HTML Text Set कर सकते हैं अथवा Control द्वारा Rendered HTML Element के Opening व Closing Tags के बीच Enclosed Text को Return कर सकते हैं।

जब हम इस Property को Use करते हैं, तब हमारे Control से सम्बंधित HTML Element के बीच Enclosed Text ज्यों का त्यों रहता है। यानी यदि हम HTML Markup से सम्बंधित Elements को भी Text की तरह get/Set करें, तो वह Text HTML Markup की तरह ही Treat होते हुए Web Browser में Render होता है।

InnerText Property

इस Property का प्रयोग करके भी हम किसी HTML Server Control में नया HTML Text Set कर सकते हैं अथवा Control द्वारा Rendered HTML Element के Opening व Closing Tags के बीच Enclosed Text को Return कर सकते हैं।

लेकिन इस Property को Use करने पर यदि getext के रूप में किसी HTML Markup या Special Character को Use करते हैं, तो वह Character Automatically Equivalent HTML Entity में Convert हो जाता है और Output में HTML Content की तरह Render नहीं होता बल्कि Text की तरह ही Render होता है।

उदाहरण के लिए यदि हम इस Property में “<b>Hello</b>” को Set करें, तो Web Browser में ये Text ज्‍यों का त्यों Content की तरह Render हो जाएगा, जबकि यदि हम इसी Content को Inner html Property में Set करें, तो उस स्थिति में Output में हमें Bold Face में “Hello” Display होगा, जबकि Opening <b> व Closing </b> Tags Content की तरह Render नहीं होंगे, बल्कि “Hello” को Hold करने के लिए Web Browser को Instruct करेंगे।

htmlInputControl Class

HTML Input Controls हमें हमारे ASP.NET Webpage पर Input Controls Place करने की सुविधा देते हैं, जिनके साथ हमारा User Interact करते हुए Required Data Input करता है। इसके अन्तर्गत Checkbox, Textbox, Buttons, List Boxes सहित विभिन्न Graphical Widgets को Create करने से सम्बंधित Classes प्राप्त होती हैं।

ये सभी Controls <input> Element द्वारा Create होते हैं। जहां Input Control केtype Attribute जैसे <input type=”text“> द्वारा Textbox, <input type=”submit“> द्वारा Submit Button, <input type=”file“>द्वारा File Uploading Control आदि Create होने वाला Control तय होता है।

सभी Server-Side Input Controls को Create करने वाली Classes, htmlInputControl Class से Derive होती हैं, जिसमें निम्नानुसार दो मुख्‍य Properties Exist होती हैं:

Type Property

इस Property का प्रयोग करके हम किसी htmlInputControl के Type को get कर सकते हैं। उदाहरण के लिए यदि किसी Input Control की Type Property का मान “text” हो, तो वह Control एक Text Input Element यानी Textbox की तरह Render होता है, जिसमें User Text Data Input करता है।

Value Property

ये एक get/Set Property होती है, जिसमें हम हमारे Input Control की Value को get या Set कर सकते हैं। जबकि Control से Associated Value पूरी तरह से Control के Type पर निर्भर होती है।

उदाहरण के लिए किसी Textbox Control की इस Property द्वारा उसमें किसी Text को Store या Retrieve किया जा सकता है, जबकि किसी Button Type के Control के साथ ही Property को Use करके हम उसके दिखाई देने वाले नाम जैसे कि “OK”, “Cancel”, “Retry” आदि को get या Set कर सकते हैं।

Hierarchy of Server Controls - ASP.NET WebForms Controls

Core ASP.NET WebForms in Hindi - BccFalna.com: TechTalks in Hindiये Article इस वेबसाईट पर Selling हेतु उपलब्‍ध EBook Core ASP.NET WebForms with C# in Hindi से लिया गया है। इसलिए यदि ये Article आपके लिए उपयोगी रहा, तो निश्चित रूप से ये पुस्तक भी आपके लिए काफी उपयोगी साबित होगी। 

Core ASP.NET WebForms in Hindi | Page:647 | Format: PDF

BUY NOW GET DEMO REVIEWS