将代码放在 lightswitch 的什么位置以将字体系列设置为 Consolas?
Where do I place the code in lightswitch to set the font family to Consolas?
我想更改 lightswitch 应用程序的多行启用文本框控件的字体类型。之前有一个关于如何执行此操作的问题。但是,我不确定将该代码放在哪里。
之前回答的参考问题是:
Setting Font in Lightswitch
但是,我不是 C# 程序员,我草率地破解了这个问题。我目前将我复制的代码放在一个名为 ClinicMessagesListDetail.lsml.cs 的文件中:(但是,它似乎对程序没有帮助或伤害)
using System;
using System.Linq;
using System.IO;
using System.IO.IsolatedStorage;
using System.Collections.Generic;
using Microsoft.LightSwitch;
using Microsoft.LightSwitch.Framework.Client;
using Microsoft.LightSwitch.Presentation;
using Microsoft.LightSwitch.Presentation.Extensions;
using System.Windows.Controls;
namespace LightSwitchApplication
{
public partial class ClinicMessagesListDetail
{
private void SetMono(string Message)
{
var ctrl = this.FindControl(Message);
if (ctrl != null)
{
ctrl.ControlAvailable += (s, e) =>
{
if (e.Control is TextBox)
{
var tb = (TextBox)e.Control;
tb.FontFamily = new System.Windows.Media.FontFamily("Consolas");
}
};
}
}
}
}
这是我第一次在这里发帖,希望我能遵守所有准则。
谢谢
戴夫 S
您似乎想在 Silverlight 客户端屏幕上实现它,您的方向是正确的。
除了您已经添加到屏幕的 class 模块 (ClinicMessagesListDetail.lsml.cs) 中的 SetMono 方法和关联的使用指令(针对 System.Windows.Controls),您还需要从屏幕创建的例程中调用 SetMono 方法。
应通过单击 'Write Code' 菜单(位于 LightSwitch 屏幕设计器顶部)下的 'ClinicMessagesListDetail_Created' 选项来引入此创建的例程。
引入后,应使用以下代码扩展这个空的创建例程以调用您的 SetMono 方法(将 NameOfYourTextBox 替换为您的控件名称):
partial void ClinicMessagesListDetail_Created()
{
// Write your code here.
SetMono("NameOfYourTextBox");
}
另一方面,如果您想在 HTML 客户端屏幕上实现字体更改,则需要采取截然不同的方法(如果是这种情况,请更新您的问题).
我想更改 lightswitch 应用程序的多行启用文本框控件的字体类型。之前有一个关于如何执行此操作的问题。但是,我不确定将该代码放在哪里。
之前回答的参考问题是:
Setting Font in Lightswitch
但是,我不是 C# 程序员,我草率地破解了这个问题。我目前将我复制的代码放在一个名为 ClinicMessagesListDetail.lsml.cs 的文件中:(但是,它似乎对程序没有帮助或伤害)
using System;
using System.Linq;
using System.IO;
using System.IO.IsolatedStorage;
using System.Collections.Generic;
using Microsoft.LightSwitch;
using Microsoft.LightSwitch.Framework.Client;
using Microsoft.LightSwitch.Presentation;
using Microsoft.LightSwitch.Presentation.Extensions;
using System.Windows.Controls;
namespace LightSwitchApplication
{
public partial class ClinicMessagesListDetail
{
private void SetMono(string Message)
{
var ctrl = this.FindControl(Message);
if (ctrl != null)
{
ctrl.ControlAvailable += (s, e) =>
{
if (e.Control is TextBox)
{
var tb = (TextBox)e.Control;
tb.FontFamily = new System.Windows.Media.FontFamily("Consolas");
}
};
}
}
}
}
这是我第一次在这里发帖,希望我能遵守所有准则。
谢谢 戴夫 S
您似乎想在 Silverlight 客户端屏幕上实现它,您的方向是正确的。
除了您已经添加到屏幕的 class 模块 (ClinicMessagesListDetail.lsml.cs) 中的 SetMono 方法和关联的使用指令(针对 System.Windows.Controls),您还需要从屏幕创建的例程中调用 SetMono 方法。
应通过单击 'Write Code' 菜单(位于 LightSwitch 屏幕设计器顶部)下的 'ClinicMessagesListDetail_Created' 选项来引入此创建的例程。
引入后,应使用以下代码扩展这个空的创建例程以调用您的 SetMono 方法(将 NameOfYourTextBox 替换为您的控件名称):
partial void ClinicMessagesListDetail_Created()
{
// Write your code here.
SetMono("NameOfYourTextBox");
}
另一方面,如果您想在 HTML 客户端屏幕上实现字体更改,则需要采取截然不同的方法(如果是这种情况,请更新您的问题).