Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/388.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何将视图扩展到JavaScript/CSS/HTMLUPW项目中的标题栏?_Javascript_Css_Uwp - Fatal编程技术网

如何将视图扩展到JavaScript/CSS/HTMLUPW项目中的标题栏?

如何将视图扩展到JavaScript/CSS/HTMLUPW项目中的标题栏?,javascript,css,uwp,Javascript,Css,Uwp,我试图用一个基于JavaScript/CSS/HTML的UWP项目将视图扩展到标题栏中,但我不知道如何访问正确的API。在Github的UWP样本中,我找到了一个引用C++编写的自定义助手类的引用,但是我在JavaScript中对类的引用不起作用。这是我的项目结构 这是我的javascript (function () { setupPanel(); configTitlebar(); })(); function setupPanel() { Windows.UI.

我试图用一个基于JavaScript/CSS/HTML的UWP项目将视图扩展到标题栏中,但我不知道如何访问正确的API。在Github的UWP样本中,我找到了一个引用C++编写的自定义助手类的引用,但是我在JavaScript中对类的引用不起作用。这是我的项目结构

这是我的javascript

(function () {
    setupPanel();
    configTitlebar();
})();

function setupPanel() {
    Windows.UI.ViewManagement.ApplicationView.preferredLaunchViewSize = { width: 700, height: 320 };
    Windows.UI.ViewManagement.ApplicationView.preferredLaunchWindowingMode = Windows.UI.ViewManagement.ApplicationViewWindowingMode.preferredLaunchViewSize;
}

function configTitlebar() {
    var titleBar = Windows.UI.ViewManagement.ApplicationView.getForCurrentView().titleBar;
    titleBar.backgroundColor = { a: 0, r: 255, g: 255, b: 255 };
    titleBar.foregroundColor = { a: 255, r: 255, g: 255, b: 255 };
    titleBar.buttonBackgroundColor = { a: 0, r: 255, g: 255, b: 255 };
    titleBar.buttonForegroundColor = { a: 255, r: 255, g: 255, b: 255 };

    var titleBarHelper = CoreViewHelpers.CoreTitleBarHelper.getForCurrentView();
    var extend = extendView.checked;
    titleBarHelper.extendViewIntoTitleBar = extend;
}
当我尝试引用CoreViewHelpers时,会出现此错误

Unhandled exception at line 18, column 5 in ms-appx://3146901b-10fb-4c64-95cb-a923fbe5c04e/js/main.js
0x800a1391 - JavaScript runtime error: 'CoreViewHelpers' is not defined

我试图从他们的(微软的)Github示例中获得以下信息:

要将视图扩展到JavaScript UWP项目的标题栏中,您可以。以下是详细的步骤

在您的解决方案中,您可以创建一个C#Windows运行时组件

namespace TitleBarHelper
{
    public sealed class CoreTitleBarHelper
    {
        public void ExtendViewIntoTitleBar(bool IsExtend)
        {
            var currentview = Windows.ApplicationModel.Core.CoreApplication.GetCurrentView();
            currentview.TitleBar.ExtendViewIntoTitleBar = IsExtend;
        }
    }
}
然后在WinJS UWP项目中,您应该添加Windows运行时组件项目作为参考项目。之后,您可以调用
extendedviewintotitlebar
方法将视图扩展到标题栏

"use strict";
var app = WinJS.Application;
var activation = Windows.ApplicationModel.Activation;
var isFirstActivation = true;
var helper = new TitleBarHelper.CoreTitleBarHelper();
app.onactivated = function (args) {
    if (args.detail.kind === activation.ActivationKind.voiceCommand) {
        // TODO
    }
    else if (args.detail.kind === activation.ActivationKind.launch) {
        if (args.detail.arguments) {
            // TODO
        }
        else if (args.detail.previousExecutionState === activation.ApplicationExecutionState.terminated) {
            // TODO
        }
        helper.extendViewIntoTitleBar(true);
    }

我添加了C#运行时组件并将其作为对我的WinJS项目的引用添加,但是当我引用“var helper=new TitleBarHelper.coreTileBarHelper();”时,我得到一个未知的运行时错误。有什么想法吗?错误描述一点帮助都没有,只是说它是未知的。@MaxMcKinney它很奇怪,在我这边工作得很好,没有任何错误,你能创建一个复制项目并提供链接帮助我查看问题吗?我在另一台计算机上测试了我的项目,没有问题!我使用的系统上一定有什么东西损坏了。谢谢你的帮助!