【问题标题】:Reading otf path from config file从配置文件中读取 otf 路径
【发布时间】:2017-07-07 00:30:26
【问题描述】:

我正在尝试从appSettings 访问.otf 路径,但它返回null。当我静态使用它时,该路径有效。

配置文件:

<add key="MetropolisBold" value="MetropolisBold.otf"/>

代码:

Dim metropolisBold As String = ConfigurationManager.AppSettings("MetropolisBold")

chart.ChartAreas(0).AxisX.LabelStyle.Font = SetFontFamily(metropolisBold)

Private Function SetFontFamily(ByVal fontFamily As String) As Font
    Dim privateFonts As New Text.PrivateFontCollection()
    privateFonts.AddFontFile(fontFamily)
    Dim font = New Font(privateFonts.Families(0), 24, FontStyle.Regular)

    Return font
End Function

关于为什么它不起作用或我应该怎么做的任何提示?

更新:

我的代码确实有效,但我忘记将值放在正确的 app.config 中。对不起我的菜鸟错误,我感谢所有的努力。

【问题讨论】:

  • 什么返回null?调用 AppSettings,还是调用 New Font?
  • 该设置包含一个文件名,但SetFontFamily 需要一个字体名称。
  • AppSettings 返回 null @ADyson
  • 不!我正在寻找价值。尝试了链接,但没有用。 @错误
  • @OlivierJacot-Descombes 不,PrivateFontCollection.AddFontFile 需要一个文件名。 msdn.microsoft.com/en-us/library/…

标签: vb.net app-config


【解决方案1】:

试试这个:

System.Configuration.ConfigurationManager.AppSettings["MetropolisBold"].ToString();

【讨论】:

    【解决方案2】:

    要检索ConfigurationManagerValue,请使用以下代码:

    ConfigurationManager.AppSettings.Item("MetropolisBold").ToSt‌​ring()
    

    在您的示例中,这将输出 MetropolisBold.otf

    这是我显示值的代码截图:

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-12-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多