2012-10-21 41 views
0

我首先深入研究了winrt/xaml/html5開發,所以任何通用指針都會受到感謝。我很欣賞這是一個非常開放的問題,基本上是一個思想轉折點,但所有的意見都是值得歡迎的。關於應用程序設計的建議winrt xaml

我被要求着眼於開發一個問卷式應用程序來取代當前的紙質問卷。應用程序將在win8平板設備上運行,這可能會/可能無法在線/無線訪問。

當前的設置是「主」系統存儲在數據庫中的問題。一個簡單的電子表格樣式輸入表格,受過訓練的操作員接收紙質問卷並輸入數據。我們旨在消除額外的輸入步驟並移除紙張。

用戶基本要求是

  • 的問題應該是可更新的要求 - 這樣的問題一定要 存儲在Win8中的設備本地數據存儲 - 從現有的主系統數據庫中導出。隨着平板電腦的設備可能沒有網上 訪問它的罰款召回藥片進行手動更新,而 不是推出新的問題OTA)

  • 答案可能需要YES/NO,鱗片狀(不高興/中度 快樂/欣喜若狂......),自由文本輸入。

  • 部分應該可以跳過/分支。所以回答YES(是) Q2分支到部分2a,回答NO分支到圖2b等

  • 答案要被存儲在本地數據存儲區和出口 的一些方法提供獲取數據到主數據庫(WIFI不能保證的廣告, 但是所有位置都將具有物理USB連接,可用於運行數據將被導入的「主」應用程序的 桌面)。

由於問題是動態的,因此頁面內容和輸入控件必須在運行時生成 - 或者在問題發生變化時生成並存儲?

所以Q1可能有輸入類型的複選框 Q2可能有輸入類型的下拉列表 Q2a可能是自由文本輸入。 回答Q2可能會導致Q5等滑行 所有這些規則將存儲在問題數據庫中。

問題提示和輸入類型將被存儲在本地數據庫

是否有可能與XAML隱藏和顯示「部分」 - 有關「顯示部分2a或2b取決於Q2等的答案。

回答

1

是否有可能與XAML隱藏和顯示「部分」 - 有關「顯示部分2a或2b取決於Q2等

是的答案。

您通過轉換器結合部分的可見性問題的答案:

<StackPanel Visibility="{Binding Answer2, Mode=OneWay, Converter={StaticResource AnswerToVisibility})"> 
    ... Section UI 
</StackPanel> 

(我使用StackPanel這裏simplicty)

那麼你的轉換器需要看起來像這樣:

public class DateConverter : IValueConverter 
{ 
    public object Convert(object value, Type targetType, object parameter, CultureInfo culture) 
    { 
     // cast value to the correct type 
     return value == condition ? Visibility.Visible : Visibility.Collapsed; 
    } 

    public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture) 
    { 
     throw new NotImplementedException(); 
    } 
} 
+0

感謝您的快速響應。我會在轉換器上尋找一些內容。 – MartinS

+0

@MartinS - 只需要搜索IValueConverter - MSDN上的文章非常清晰。 – ChrisF

+0

轉換器必須動態綁定我猜測,因爲從數據存儲中讀取問題時頁面內容將是動態的 - 除非在修改問題時生成靜態頁面。 – MartinS