我有一個應用程序顯示來自數據庫的結果數據。偶爾如果結果帶有附加數據,我們會追加記錄。在這種情況發生之前,UserControl中的值爲「NA」。我在UserControl類中有一個refreshdisplay()方法,它運行得很漂亮,不幸的是,如果我在使用「new」之後從我的dataHandler類調用它,那麼UserControl不會刷新。我猜這是因爲我用從外部類刷新userControl
UserControlResultDisplay resultDisplay = new UserControlResultDisplay();
如何使用的方法,並與現有的用戶控件不實例化一個新的互動?
下面是一些代碼片段:
UserControlResultDisplay resultDisplay = new UserControlResultDisplay();
public void UpdateResultDB(ResultDataJFTOT resultData)
{
AnalysisListCommon myresult = PContext.GetInstance().DbHandlerLocal.StoredResult(
resultData.SampleId,
resultData.TestDate.ToString("yyyy-MM-ddTHH:mm", CultureInfo.InvariantCulture),
resultData.InstrumentSn,
StringRepository.constStringSampleName);
if (myresult != null)
{
Result r = new Result(new Guid(myresult.ResultId));
ResultData rd = r.GetResultData("Rating", FindResultDataMode.byVariableIdentifier);
string xmlTubeRating = resultData.tRating.ToString().Replace("#LT#", "<");
rd.Text = xmlRating;
rd.Store();
rd = r.GetResultData("TestDate", FindResultDataMode.byVariableIdentifier);
rd.Text = resultData.Date.ToString();
rd.Store();
resultDisplay.RefreshDisplay();
else
{
AddTestToQueue(resultData);
}
}
通過構造函數傳遞現有引用?多數民衆贊成你通常這樣做...我錯過了什麼可以防止呢? – BradleyDotNET
我這樣做了,但關鍵字「新」的使用似乎在我的giddyup中造成困難。這是否打開一個新的UserControl實例,而不是使用打開的實例。調用函數不在表單中,因此該函數在UserControl打開並可見時執行。我有點新手,所以請耐心等待,並詳細說明我是否離開基地。 – willkk
如果您將它作爲參數傳遞,則不需要'new'關鍵字。你可以在這裏發佈代碼嗎? – BradleyDotNET