14.02.2017 Views

. Стиллмен, Дж. Грин - Изучаем 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

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!