C# 如何找出上面的表格?
在Compact Framework中,如何确定向用户显示的表单是哪个表单(即使不是全屏)C# 如何找出上面的表格?,c#,winforms,compact-framework,C#,Winforms,Compact Framework,在Compact Framework中,如何确定向用户显示的表单是哪个表单(即使不是全屏) 有什么想法吗?如果我找到答案(没有人响应),我将继续查找并发回。看起来您可以调用GetForegroundWindow来查找当前窗口。示例来自: GetForegroundWindow()应该可以工作。另外,您也可以使用OpenNetCF,它是Win CE API的.NET CF包装器。 public ApplicationState AppState { get { Pr
有什么想法吗?如果我找到答案(没有人响应),我将继续查找并发回。看起来您可以调用GetForegroundWindow来查找当前窗口。示例来自: GetForegroundWindow()应该可以工作。另外,您也可以使用OpenNetCF,它是Win CE API的.NET CF包装器。
public ApplicationState AppState
{
get
{
Process[] processCollection = Process.GetProcessesByName(ProcessName);
if(processCollection != null && processCollection.Length >= 1 &&
processCollection[0] != null)
{
IntPtr activeWindowHandle = Win32.GetForegroundWindow();
//Optional int ProcessID;
//Optional Win32.GetWindowThreadProcessId(GetForegroundWindow(),out ProcessID)
foreach(Process wordProcess in processCollection)
{
//Optional if( ProcessID == wordProcess.Id ) return ApplicationState.Focused;
if(wordProcess.MainWindowHandle == activeWindowHandle)
{
return ApplicationState.Focused;
}
}
return ApplicationState.Running;
}
return ApplicationState.NotRunning;
}
}