. Стиллмен, Дж. Грин - Изучаем C#, 2-е издание
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
О ткры ти<strong>е</strong> и сохран<strong>е</strong>ни<strong>е</strong> файлоб при помощи<br />
окон диалога<br />
П о с т р о и м програм м у, о тк р ы в а ю щ ую т <strong>е</strong> к с т о в ы й файл.<br />
О н а д о л ж н а позволять р<strong>е</strong>дакти р о вать ф айл и со хр а <br />
н я ть сд<strong>е</strong>ланны <strong>е</strong> и зм <strong>е</strong> н <strong>е</strong> н и я п р и п о м о щ и с та н д а р тн ы х<br />
эл<strong>е</strong>м <strong>е</strong>нтов у п р а вл<strong>е</strong>ния .NET.<br />
о<br />
о<br />
^ ^ -------У п р а ж н <strong>е</strong> н и <strong>е</strong> !<br />
Создани<strong>е</strong> простои цюрмы.<br />
Вам п о тр<strong>е</strong>бу<strong>е</strong> тся т<strong>е</strong> ксто во <strong>е</strong> нол<strong>е</strong> и дв<strong>е</strong> к н о п<br />
ки. П <strong>е</strong> р <strong>е</strong> та щ и т<strong>е</strong> на ф орм у такж <strong>е</strong> эл<strong>е</strong>м <strong>е</strong>нты<br />
O p e n F i l e D i a l o g и S a v e F i l e D i a l o g . Д в о й н ы м<br />
щ <strong>е</strong>лчком на к н о п к а х создайт<strong>е</strong> о б р а б о т ч и к и собы <br />
т и й и д о б а в ь т <strong>е</strong> з а к р ы т о <strong>е</strong> с т р о к о в о <strong>е</strong> п о л <strong>е</strong> n a m e .<br />
Д обавьт<strong>е</strong> о п <strong>е</strong> р а то р u s i n g для S y s t e m . 10.<br />
Привязка кнопки open к эл<strong>е</strong>м<strong>е</strong>нту openFileDialog.<br />
К н о п к а O pen о то б р а ж а <strong>е</strong> т объ<strong>е</strong>кт O p e n F i l e D i a l o g и использу<strong>е</strong>т<br />
м <strong>е</strong>тод F i l e . R e a d A l l T e x t () для ч т <strong>е</strong> н и я ф айла в т<strong>е</strong> ксто во м пол<strong>е</strong>:<br />
p r i v a t e v o i d o p e n _ C lic k ( o b j e c t se n d e r , E ven tA rgs e) {<br />
i f ( o p e n F ile D ia lo g l.S h o w D ia lo g 0 == D i a l o g R e s u l t . OK) {<br />
}<br />
}<br />
name = o p e n F i le D i a l o g l. F ileN am e;<br />
t e x t B o x l . C l e a r ( );<br />
t e x t B o x l.T e x t = F ile .R e a d A llT e x t ( n a m e ) ;<br />
Д<strong>е</strong>йствия для кнопки Save.<br />
1Снопка S a v e использу<strong>е</strong>т для<br />
W r i t e A l l T e x t О :<br />
чт<strong>е</strong>ни<strong>е</strong> и запись файлов<br />
Чтобы разв<strong>е</strong>рнуть т<strong>е</strong>кстово<strong>е</strong> пол<strong>е</strong><br />
на всю форму, п<strong>е</strong>р<strong>е</strong>тащит<strong>е</strong> на н<strong>е</strong><strong>е</strong><br />
эл<strong>е</strong>м<strong>е</strong>нт T ableL ayoutP anel из окна<br />
C on tain ers, присвойт<strong>е</strong> свойству Dock<br />
знач<strong>е</strong>ни<strong>е</strong> F i l l , а при помощи р<strong>е</strong>дактора<br />
свойств Rows и Colunms создайт<strong>е</strong> дв<strong>е</strong><br />
строки и один столб<strong>е</strong>ц, в в<strong>е</strong>рхнюю яч<strong>е</strong>йку<br />
п<strong>е</strong>р<strong>е</strong>тащит<strong>е</strong> эл<strong>е</strong>м<strong>е</strong>нт TextBox, в нижнюю<br />
— эл<strong>е</strong>м<strong>е</strong>нт FlowLayoutPanel.<br />
Свойству Dock присвойт<strong>е</strong> знач<strong>е</strong>ни<strong>е</strong><br />
F i l l , а свойству F low D ireC tion —<br />
знач<strong>е</strong>ни<strong>е</strong> R ightT oL eft и п<strong>е</strong>р<strong>е</strong>тащит<strong>е</strong><br />
туда дв<strong>е</strong> кнопки. Разм<strong>е</strong>р в<strong>е</strong>рхн<strong>е</strong>го ряда<br />
эл<strong>е</strong>м<strong>е</strong>нта T ableL ayoutP anel задайт<strong>е</strong><br />
равным 100%, а разм<strong>е</strong>р нижн<strong>е</strong>го ряда<br />
пом<strong>е</strong>няйт<strong>е</strong> таким образом, чтобы там<br />
пом<strong>е</strong>стились дв<strong>е</strong> кнопки.<br />
jC Sid^Jle Tent Editor<br />
Щ<strong>е</strong>лчок на кнопк<strong>е</strong> Open<br />
о<strong>е</strong>ла<strong>е</strong>т видимым эл<strong>е</strong>м<strong>е</strong>нт<br />
управл<strong>е</strong>ния OpenFileDialog.<br />
сохр ан<strong>е</strong>ния файла м<strong>е</strong>тод F i l e .<br />
p r i v a t e v o i d s a v e _ C l i c k ( o b j e c t s e n d e r , E ven tA rgs e) {<br />
i f ( s a v e F il e D ia l o g l .S h o w D ia l o g 0 == D ia lo g R e su lt.O K )<br />
}<br />
}<br />
name = s a v e F i l e D i a l o g l . F ileN am e;<br />
F ile .W r it e A llT e x t ( n a m e , t e x t B o x l . T e x t );<br />
Д руги<strong>е</strong> свойства окна д и ал о га.<br />
★ П о м <strong>е</strong> н я й т<strong>е</strong> т<strong>е</strong> к с т в стр о к<strong>е</strong> заголовка с п о м о щ ь ю свойства<br />
★<br />
T i t l e объ<strong>е</strong>кта S a v e F i l e D i a l o g .<br />
У ка ж и т<strong>е</strong> откры ва<strong>е</strong>м ую п о ум о л ч а н и ю папку с п о м о щ ь ю<br />
свойства i n i t i a l F o l d e r .<br />
★ У ка ж и т<strong>е</strong> , ч т о объ<strong>е</strong>кт O p e n F i l e D i a l o g долж <strong>е</strong> н показы вать<br />
то л ь ко т<strong>е</strong> ксто вы <strong>е</strong> ф айлы , с п о м о щ ь ю свойств а F i l t e r .<br />
да<br />
Это т<strong>е</strong>кстово<strong>е</strong> пол<strong>е</strong>,<br />
свойство Multiline которого<br />
им<strong>е</strong><strong>е</strong>т знач<strong>е</strong>ни<strong>е</strong><br />
true.<br />
(М <strong>е</strong>т оды R e a c tA llT e x tQ<br />
Save.<br />
и WriteAllTextO являются<br />
частью класса File- дол<strong>е</strong><strong>е</strong><br />
подробно мы поговорим<br />
о них ч<strong>е</strong>р<strong>е</strong>з н<strong>е</strong>сколько<br />
. страниц,.<br />
Если н<strong>е</strong> задать это свойство.<br />
раскрывающийся<br />
список в нижн<strong>е</strong>й части окон<br />
диалога Open и Save буд<strong>е</strong>т<br />
пустым. В данном случа<strong>е</strong><br />
используйт<strong>е</strong> фильтр: Text<br />
Files (*.txt)<br />
дальш<strong>е</strong> ^ 413