0

我有一個時間字段,我想在lightswitch屏幕上表示。他們只提供日期時間選擇器和查看器。有沒有人知道這方面的工作?Lightswitch時間控制

我不想要日期,只是時間。在我的數據庫中,列被定義爲time(7)。現在只需要在Lightswitch中獲得。請幫助。

我想改變我的數據庫類型varchar和使用常規的文本框,但LightSwitch中不提供我格式化文本(例如 AM/PM)。如果我能做到這一點,這將是一個很好的解決方法,但是我無法在Lightswitch中做到這一點。

+1

*這將是一個很好的解決方法* - **否**它不會。請停止將日期和/或時間存儲爲字符串/ varchar - **現在!**使用適當的數據類型 - 這就是他們在 –

+0

查看http://stackoverflow.com/questions/7050656/time-datatype-在視覺工作室,電燈開關。 –

+0

@marc_s好,如果lightswitch允許我做到這一點..然後我會......如果我沒有另一種選擇..我將不得不! – Maverick1415

回答

0

對於控件,我敢肯定你會被一個日期時間選擇器/查看器卡住,除非你創建一個自定義控件,只是做時間。在這種情況下,@MichaelWashington在@MattThalman提到的答案中鏈接的文章就是要走的路。

但是對於顯示器,Lightswitch當然可以讓你根據自己的喜好進行格式化。查看此MSDN文章:How to: Format Numbers and Dates in a LightSwitch Application。基本上你會在數據設計器中打開你的表格,然後選擇你的日期時間字段。在該字段的屬性中,您可以輸入格式模式。

從MSDN文章:Reference: Number and Date Formats。格式"t"的格式將導致顯示結果:1:45 PM

@marc_s是正確的。使用適當的類型。將日期和時間存儲爲字符串會在稍後導致大量頭痛。不要這樣做。

我不確定在Lightswitch中使用日期時間類型的分歧,time(7)是SQL。我可能只是將您的數據庫類型更改爲datetimedatetime2。如果你不使用日期部分,那就這樣吧。但如果需求發生變化,它將在稍後出現。

0

我有同樣的問題,想出了這個解決方案。

在你的日期時間控件表示你的日期字段,你可以在後期渲染事件上使用JQuery來隱藏你不想要的部分。

myapp.AddEditEvents.FinishTime_postRender = function (element, contentItem) { 

    // Hide the Date part of the Control by removing the first fieldset tag it comes to, 
    $(element).find('fieldset:first').remove(); 

};