<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    云自無心水自閑

    天平山上白云泉,云自無心水自閑。何必奔沖山下去,更添波浪向人間!
    posts - 288, comments - 524, trackbacks - 0, articles - 6
      BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

    數據綁定的小技巧 Flex Data Binding Tip

    Posted on 2007-03-08 22:58 云自無心水自閑 閱讀(3607) 評論(0)  編輯  收藏 所屬分類: FlexFlex2

    ?

    現在有一個方便的做法來根據選擇Enable/Disable控件。比如:有一個DataGrid和數個操作數據的按鈕,當選中某行是激活其中一個按鈕,選中另一行時,激活其中另一個按鈕,等等。

    通常的做法是寫一大堆的if else語句,或者是設置一堆變量綁定到按鈕上,然后在代碼中設置這些變量的值,比如:

    [Bindable] private var somethingSelected:Boolean = false;
    <mx:Button label="Publish" click="publishItem()" enabled="{somethingSelected}" />

    這是一個有益的嘗試。所有的依賴于DataGrid狀態的控件都綁定一個變量。改變變量的值就改變控件的enabled狀態。但是你還需要確定改變變量值的時機。比如:

    private function publishItem() : void {
    ???? // get the selected item
    ???? // publish it
    ???? grid.selectedItem = -1; // clear the selection
    ???? somethingSelected = false;
    }

    在復雜的情況下,假設有另一個按鈕需要在選中某個特定值時被激活。那么你不僅需要考慮選中對應的那個變量,還需要考慮其他按鈕的情況。也就是說,在publishItem函數中你還需要設置其他變量的值。

    一個更方便的做法是這樣的。現在我們Publish按鈕和somethingSelected變量進行綁定。我們還需要做的是把somethingSelected變量與DataGrid的選中狀態進行關聯。對此,我們可以使用<mx:Binding>標簽。

    <mx:Binding source="grid.selectedIndex >= 0" destination="somethingSelected" />

    這樣somethingSelected的值與DataGrid的選中狀態就緊密地聯系起來了。當選中了DataGrid中的某條數據時,所有進行enabled="{somethingSelected}"綁定的按鈕就被激活。<mx:Binding>標簽的source屬性不需要一定是一個變量,完全可以是一個表達式。

    比如稍微復雜一點的一個例子:

    <mx:Binding source="grid.selectedItem.code == 1" destination="codeOnePicked" />

    這樣,當DataGrid選中行的code字段的值為1時,變量codeOnePicked的值被設置為true。
    mxml中可以如下定義:

    <mx:CheckBox label="Code One?" selected="{codeOnePicked}" />
    <mx:Button label="Publish" enabled="{somethingSelected && !codeOnePicked}" />

    這樣,當選中行的code字段值為1時,上面的復選框被激活,而下面的按鈕無效。



    主站蜘蛛池模板: 国产黄在线播放免费观看| 久久精品国产亚洲AV忘忧草18 | 国产成人精品123区免费视频| 亚洲男人的天堂久久精品| 亚洲一级毛片免费看| 亚洲成a人片77777群色| 一二三四影视在线看片免费| 亚洲国产日韩在线人成下载| 麻豆最新国产剧情AV原创免费| 亚洲最大成人网色香蕉| 午夜男人一级毛片免费| 国产成人+综合亚洲+天堂| 亚洲精品tv久久久久久久久久| 一级毛片免费在线播放| 亚洲AV无码专区国产乱码电影| 一级毛片免费不卡在线| 国产成人精品日本亚洲18图| 日韩成人免费aa在线看| 一个人看的在线免费视频| 国产成人亚洲精品青草天美| 2019中文字幕在线电影免费| 亚洲日产乱码一二三区别| 国产一级淫片视频免费看| 久久免费观看视频| 亚洲精品美女视频| 在线看片人成视频免费无遮挡| 免费国产在线精品一区| 亚洲人成网站影音先锋播放| 夫妻免费无码V看片| 成年大片免费高清在线看黄| 久久精品国产亚洲AV电影| 日韩免费观看一级毛片看看| 久久久免费观成人影院| 激情内射亚洲一区二区三区爱妻| 亚洲国产一区二区三区| 亚洲精品国产免费| 黄色网页免费观看| 亚洲黄网在线观看| 亚洲天堂在线视频| 思思re热免费精品视频66| 国产日韩久久免费影院 |